如何使lodash _.replace在字符串中出现?

时间:2016-04-05 14:48:02

标签: javascript string lodash

如何用另一个字符串替换字符串中每个字符串模式?

var text = "azertyazerty";
_.replace(text,"az","qu")

返回quertyazerty

4 个答案:

答案 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")