You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Lorem Ipsum文本替换原文本并保留格式特征

实现匹配格式的Lorem Ipsum文本替换

核心思路是逐字符匹配原文本的格式特征,利用lorem-ipsum库生成基础文本后,按原文本的大小写、非字母字符位置做对应替换,具体步骤和代码实现如下:

实现逻辑

  1. 生成足够长的Lorem Ipsum文本作为字符替换池,统一转为小写备用
  2. 遍历原文本的每个字符:
    • 非字母类字符(标点、空格、数字等)直接保留
    • 字母类字符从替换池中取对应位置的字符,再匹配原字母的大小写

代码示例

const loremIpsum = require('lorem-ipsum').loremIpsum;

function formatMatchingLorem(originalText) {
  // 生成超长Lorem文本,去除空格后作为字符池
  let loremPool = loremIpsum({ count: 100, units: 'words' }).toLowerCase().replace(/\s/g, '');
  let poolIndex = 0;
  let result = '';

  for (const char of originalText) {
    // 非字母直接保留
    if (!/[a-zA-Z]/.test(char)) {
      result += char;
      continue;
    }
    // 从字符池取字符并匹配原大小写
    let targetChar = loremPool[poolIndex % loremPool.length];
    result += char === char.toUpperCase() ? targetChar.toUpperCase() : targetChar;
    poolIndex++;
  }
  return result;
}

// 测试示例
const original = `I, have a text that I want to replace. END;`;
const replaced = formatMatchingLorem(original);
console.log(replaced);
// 输出示例:D, quam e lementum Ferme potincidu. PUR;

额外优化

如果需要贴近示例里的"单词拆分带空格"效果,可以在遍历过程中识别原文本的空格位置,从Lorem单词库中截取对应长度的单词片段,再按原空格位置拆分插入。

内容的提问来源于stack exchange,提问作者Sergino

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 22:50:32