通过替换修改字符串

时间:2011-12-28 16:54:59

标签: javascript

如何用其他单词替换字符串中的某些单词?例如:

var text1 = "This is a sentence. It is a pencil."
text2 = modify(text1);

我希望text2成为“那是一句话。我是一支铅笔。”

因此修改函数替换了This->那,is->是

4 个答案:

答案 0 :(得分:4)

要使用is替换子字符串was的所有实例,您可以使用replace[MDN]方法:

text2 = text1.replace(/is/g, "was");

请注意,因为is是单词this的一部分,所以它实际上会返回

  

Thwas是一句话

如果您要将This的所有实例替换为Thatiswas,则可以将调用链接到replace方法。< / p>

text2 = text1.replace(/This/g, "That").replace(/is/g, "was");

这将正确地替换

  

这是一句话。这是一支铅笔。

  那是一句话。这是一支铅笔。

你可以see this in action on jsFiddle.


请注意,查找和替换此类操作可能会产生意想不到的后果。例如,这个字符串

  蓟和荆棘对导弹和玉米不利。

更换后

会变成这个:

  

那些蛤蜊和荆棘对于m and和玉米都不好。

这种事情俗称the Clbuttic mistake

答案 1 :(得分:0)

text1 = text1.replace('is', 'was');

顺便说一句,.replace也接受正则表达式

答案 2 :(得分:0)

利用javascript替换方法 -

http://www.w3schools.com/jsref/jsref_replace.asp

注意:要替换JavaScript中每次出现的字符串,必须为replace()方法提供一个带有全局修饰符作为第一个参数的正则表达式。

答案 3 :(得分:0)

你可以像这样使用javascript的Replace函数:

var text2 = text1.replace('is','was');