【发布时间】:2018-04-15 14:49:38
【问题描述】:
function replaceKeys(inputString, keys){
for (var i = 0; i < keys.length; i++) {
var t = keys[i];
if (t) inputString= inputString.replace(new RegExp(t, 'gi'), '<strong>' + t + '</strong>');
}
return s;
}
使用上面的 javascript 方法,我尝试根据“键”或字符串部分的列表将给定字符串中的所有文本加粗。
输入示例:
键=[“人”,“str”]
inputString="strong man"
预期输出:
strong man
不幸的是,输出也替换了强标签的“str”部分。意味着输出变为
strong>strstrong>ong man。
是否有正则表达式或其他方法,以便我可以忽略字符串中的 html 标记,这样它就不会出现这种奇怪的行为?
【问题讨论】:
标签: javascript string string-matching