根据订单匹配单词列表

时间:2014-12-10 13:51:52

标签: c# regex

我正在尝试构建一个正则表达式来匹配单词列表(所有单词),但是按顺序排列。 假设我说的是whatpeople

字符串:what people do应匹配。

字符串:people don't like what they do不应该匹配(因为单词没有以正确的顺序出现)。

字符串:people are nice不匹配,因为并非所有单词都存在。

我有这个正则表达式:\b(?=.*WHAT)(?=.*PEOPLE)\b除了订单部分之外它还可以正常工作 - 当people出现在what之前它也会返回成功。

2 个答案:

答案 0 :(得分:2)

你可以直接使用这个正则表达式。

^.*\bwhat\b.*\bpeople\b.*$

DEMO

答案 1 :(得分:0)

^(?=.*?\bwhat\b.*?\bpeople\b).*$

试试这个。看看演示。

https://regex101.com/r/nL5yL3/37