【发布时间】:2016-04-15 06:43:00
【问题描述】:
所以基本上我要做的是遍历 html 文档中的每个单词,并将每个单词的第一个字母替换为“A”,第二个 - 倒数第二个字母替换为“b”,最后一个字母替换为“ c',完全取代了这个词。我不确定正则表达式是否是执行此操作的方法(我应该改为使用 for 循环并检查每个字符吗?)但是我还是会问。
目前我在做:
document.body.innerHTML = document.body.innerHTML.replace(/\b(\w)/g, 'A'); 获取每个单词的首字母
document.body.innerHTML = document.body.innerHTML.replace(/\w\b/g, 'c'); 获取每个单词的最后一个字母
因此,如果我有字符串:Lorem ipsum dolor sit amet,我目前可以将其设为 Aorec Apsuc Aoloc Aic Amec,但我想在 javascript 中使用 Abbbc Abbbc Abbbc Abc Abbc。
非常感谢任何帮助 - 正则表达式真的让我感到困惑。
【问题讨论】:
-
你为什么不直接计算每个单词的长度,根据需要用尽可能多的 bbb 构建新单词?
-
@rock321987 嗯,是的,我没有想到这一点 - 我可能会遍历并删除包含 3 个或更少字符的单词
-
@RaphaelMüller - 是的可能应该走那条路(因此我在问题中提到了循环)但是我一直(试图)从 Treehouse 学习正则表达式,并且对你将如何去做很感兴趣它:)
标签: javascript html regex string