【发布时间】:2015-09-05 20:00:24
【问题描述】:
我正在寻找一个 PHP 正则表达式来匹配句子中的一个单词,该单词还可以选择允许句子中的一些其他单词,但是如果句子中有任何其他单词不在允许列表中,则匹配应该失败.例如:
The quick fox
我在这里寻找狐狸。 'the' 和 'quick' 如果它们出现也可以。既然这些词是可选的,那么就
fox
也可以。不过,
The quick brown fox
不好。我不想要一只棕狐。
您也可以提出另一种执行此操作的方法,但它需要非常快。
编辑:这些词将出现在 fox 之前,但它们可以以任何顺序出现,所以
quick The fox
也应该匹配。
【问题讨论】:
-
请展示您已经尝试过的内容。
-
@RomanMik 我尝试了一些花哨的前瞻,比如 ^(?=.*?the)(?=.*?quick).*?dog,但并没有完全融合在一起。
-
您的用例是什么?如果你对你想要完成的事情给出一个更完整和一般的想法,编写一个高性能的正则表达式会更容易。
-
@jreut 我想我找到了解决方案。我发布了我的答案。