基本上,我需要能够在字符串(不区分大小写)中找到某些单词(“单词”是指字符集),如果它们匹配,则需要在该特定字符的第一个字母后插入符号字符集。我无法使用搜索替换,因为那样将无法保留大小写。
例子:
如果我要查找的单词是brown
,而我要插入的字符是*
,则结果应为:
在 JS 中这样做的最佳方法是什么?
最佳答案
function astAfterFirstLetter(words) {
var re = new RegExp("\\b(?=" + words.join("|") + "\\b)(\\w)(\\w*)", "gi");
return function (str) { return str.replace(re, "$1*$2"); };
}
astAfterFirstLetter(["brown", "cow"])("How now brown cow!")
产生
How now b*rown c*ow!
关于JavaScript不区分大小写的匹配和替换?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6989463/