正则表达式:替换;如果单词不是以&开头的单词

时间:2013-08-10 10:39:11

标签: javascript jquery regex

我正在尝试在javascript中使用Regex。让我们来看看这个场景,

str = "This; is; John; & Jane;"

我需要的结果,

str= "This* is* John* & Jane*"

这就是我尝试过的,

str.replace(/\^(?!&)\w+;\s/g, "*");

请帮忙。 谢谢。

2 个答案:

答案 0 :(得分:2)

尝试

str.replace(/(^|\s)([^&]\S+?);(?=$|\s)/g, "$1$2*")

如果没有捕获组,你就无法做到这一点,因为这需要一个jaw不支持的lookbehind断言。

答案 1 :(得分:2)

试试这个:

str.replace(/((^| )[^&]\w+?);/g, "$1*");