我正在寻找一种简便快捷的方法来替换javascript中的多个字符串。
我当前的方法如下:
string.replace(string.replace(searchValue, newValue),newValue)
如果我必须在文本中替换10个字符串,那么这将非常大。还有其他方法可用于替换javascript中的文本吗?
答案 0 :(得分:1)
您可以使用replace并使用正则表达式 test.replace(/ hello / g,“自由”); 工作示例:
var test = "hello world , mine is hello and i will replace all hello with liberty"
var newStr = test.replace(/hello/g, "liberty");
console.log(newStr);
答案 1 :(得分:0)
let str= "I am a am man";
function replaceString(fullString, searchValue, replaceValue) {
while(!!~fullString.indexOf(searchValue)){
fullString = fullString.replace(searchValue, replaceValue)
}
return fullString;
}
console.log(replaceString(str, 'am', 'x'))
您可以使用简单的while循环,并使用indexOf
来检查是否存在,然后替换,直到我们找不到文本为止
答案 2 :(得分:0)
split
,map
和replace
应该适合您:
const replaceString = (str, searchValue, newValue) => {
let replaceStr = str.split(" ").map(value => {
return value.replace(searchValue, newValue);
});
console.log(replaceStr.join(" ")); // Just for demo purpose, I am outputting the result to the console
};
const string = 'Hello world! How are you dear world?';
replaceString(string, 'world', 'earth');