正则表达式,不包含多个短语但匹配单词

时间:2017-04-12 06:22:12

标签: java regex

我希望有一个正则表达式,以匹配短语"巧克力冰淇淋","香草冰淇淋"或者只是"冰淇淋"但不是短语"没有冰淇淋"。我对正则表达式很糟糕,到目前为止,我有类似的东西:(!no\ice-cream)|(chocolate\sice-cream)|(vanilla\sice-cream)|(ice-cream)但当然最后一组也匹配单词:ice-cream如果短语:没有冰淇淋存在。有人可以帮忙吗?感谢。

1 个答案:

答案 0 :(得分:0)

您需要添加负面的lookbehind,如下所示:(!no\ice-cream)|(chocolate\sice-cream)|(vanilla\sice-cream)|((?<!no )ice-cream) 希望这会有所帮助。