我有这样的事情:
var myString = "Paul, Paula, Pauline";
var myRegExp = /Paula?/g;
var change= myString.replace(myRegExp, "George");
document.write(change);

如何更改 Paul
和Paula
而不将Pauline
更改为Georgeine
。现在,我得到George, George, Georgeine
,我想要George, George, Pauline
。
答案 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
)是必要的,因为如果还有其他单词字符Paul
或Paula
,我们需要告诉正则表达式引擎使匹配失败。
答案 1 :(得分:1)
var myRegExp = /(^|\s)Paula?(?=[,\s]|$)/g
您可以使用它并替换为var change= myString.replace(myRegExp, "$1George");
参见演示。