如果单词包含 PRP
,则此正则表达式匹配空格之间的所有字符。
如果它们包含 PRP
,但如果它们包含 me
,我如何让它匹配 whitepsace 之间的所有单词或字符。
因此匹配所有包含 PRP 但不包含 ME 或 me 的单词。
这是匹配包含 PRP 的单词的正则表达式:\S*PRP\S*
最佳答案
您可以为此使用负前瞻:
(?:^|\s)((?!\S*?(?:ME|me))\S*?PRP\S*)
Working Demo
附言:使用 #1
组作为匹配词。
代码:
var re = /(?:^|\s)((?!\S*?(?:ME|me))\S*?PRP\S*)/;
var s = 'word abcPRP def';
var m = s.match(re);
if (m) console.log(m[1]); //=> abcPRP
关于javascript - 更改正则表达式以匹配某些单词而不是所有包含 PRP 的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24268809/