我的要求是,我想匹配两组单词中一个句子中的单词,说该句子中至少应包含第1组中的一个单词,也应包含第2组中的至少一个单词。
表情-(足球|曲棍球|板球)和(罗纳尔多|梅西|科赫利|约旦)
句子可以是-
Ronaldo is the highest paid player in Football.
为此可能的正则表达式是什么,语言是php。
我尝试过
(?=.*\b(cat|dog|rat)\b)(?=.*\b(blue|black|red)\b).*$
可行,但区分大小写。
答案 0 :(得分:1)
使用以下内容:
.*\b(?:ronaldo|messi|kohli|jordan)\b.*\b(?:football|hockey|cricket)\b.* /i
请注意使用/i
标志来区分大小写。
https://gist.github.com/gnh1201/e372f5de2e076dbee205a07eb4064d8d
答案 1 :(得分:0)
尝试使用2个正则表达式,每组一个,然后检查2个匹配项:
例如:
Forst正则表达式:/(Football)|(Hockey)|(Cricket)/i
第二个正则表达式:/(Ronaldo)|(Messi)|(Kohli)|(Jordan)/i