使用JavaScript更改字符串中的特定单词

时间:2015-07-16 12:50:30

标签: javascript regex replace

我有这样的事情:



var myString = "Paul, Paula, Pauline";
var myRegExp = /Paula?/g;
var change= myString.replace(myRegExp, "George");
document.write(change);




如何更改 PaulPaula而不将Pauline更改为Georgeine。现在,我得到George, George, Georgeine,我想要George, George, Pauline

2 个答案:

答案 0 :(得分:4)

您可以使用以下正则表达式:

var myRegExp = /\bPaula?\b/g;

var myString = "Paul, Paula, Pauline";
var myRegExp = /\bPaula?\b/g;

var change= myString.replace(myRegExp, "George");

document.write(change);

Word boundaries\b)是必要的,因为如果还有其他单词字符PaulPaula,我们需要告诉正则表达式引擎使匹配失败。

Regular expression visualization

Debuggex Demo

答案 1 :(得分:1)

var myRegExp = /(^|\s)Paula?(?=[,\s]|$)/g

您可以使用它并替换为var change= myString.replace(myRegExp, "$1George");

参见演示。

https://regex101.com/r/fX3oF6/11