javascript - 如何替换javascript中的几个单词

标签 javascript string replace

我想在 javascript 中使用 replace() 替换文本中的几个单词,我该怎么做?

例如,如果我想将“Dave Chambers, David Chambers, Will Smith”替换为“Jackie Chan”/strong>',无论它们是大写还是小写,我是否必须每次都对同一个字符串变量重复 replace() 方法,即

var str = sometext.innerHTML;
str.replace('Dave Chambers', 'Jackie Chan');
str.replace('David Chambers', 'Jackie Chan');
str.replace('Will Smith', 'Jackie Chan');

最佳答案

将正则表达式与交流发电机 (|) 和不区分大小写的修饰符 (/i) 结合使用:

var str = sometext.innerHTML,
    reg = /Dave Chambers|David Chambers|Will Smith/i;

str = str.replace(reg, "Jackie Chan"); 

一个更短、更复杂的正则表达式可以是:

/Dav(?:e|id) Chambers|Will Smith/i;

如果可能出现超过 1 次,则添加全局修饰符 (g) 以替换所有:

/Dav(?:e|id) Chambers|Will Smith/ig;

您可以了解有关正则表达式的更多信息 here ,或通过谷歌搜索。你可以看到一个工作演示 here .

关于javascript - 如何替换javascript中的几个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4784595/

相关文章:

android - 如何在android中将json数组转换为字符串数组?

javascript - javascript : cipher broken 中的凯撒密码

java - 如何改变字符串中字符的位置?

javascript - 遍历 JavaScript 对象

返回比 Linux `wc -l` 高得多的行数的 Python 代码

javascript - 使用 Next.js 通过服务器端渲染响应查询

java - 使用replaceAll替换数字中的字符在java中不起作用

Javascript:帮助用 innerHTML 的 '<div>' 替换 '<br>'!

javascript - 使用 JavaScript 中的按钮更改图像

javascript - 将文本添加到 Froala 文本编辑器