如何用另一个字符串替换字符串中每个字符串模式?
var text = "azertyazerty";
_.replace(text,"az","qu")
返回quertyazerty
答案 0 :(得分:31)
您也可以
var text = "azertyazerty";
var result = _.replace(text, /az/g, "qu");
答案 1 :(得分:26)
你必须使用lodash提供的全局选项RegExp。
所以只需使用
var text = "azertyazerty";
_.replace(text,new RegExp("az","g"),"qu")
返回quertyquerty
答案 2 :(得分:7)
我喜欢lodash,但如果没有它,这可能是少数几件事之一。
var str = str.split(searchStr).join(replaceStr)
作为具有错误检查功能的实用功能:
var replaceAll = function (str, search, replacement) {
var newStr = ''
if (_.isString(str)) { // maybe add a lodash test? Will not handle numbers now.
newStr = str.split(search).join(replacement)
}
return newStr
}
为了完整性,如果你确实想要使用lodash,那么要实际替换文本,将结果分配给变量。
var text = 'find me find me find me'
text = _.replace(text,new RegExp('find','g'),'replace')
参考文献: http://localhost:8080
答案 3 :(得分:2)
Vanilla JS完全有能力满足您的需求,而无需lodash的帮助。
const text = "azertyazerty"
text.replace(new RegExp("az", "g"), "qu")