我与PHP的工作preg_match
-我怎样才能找到如果双方foo
并bar
都存在,无论它是否是foobar
或barfoo
或something bar that foo
。显然,类似的方法foo.*bar|bar.*foo
可以工作,但是要足够复杂foo
,bar
我非常希望不要重复编写它们。
如果仅是测试,则可以轻松进行两项检查:一项用于foo
,另一项用于bar
。
否则,如果您希望在单个正则表达式中使用它,则可以使用正向先行:
(?=.*foo)(?=.*bar)
每一个都确保foo
和bar
分别位于字符串中更远的位置,并带有.*
正则表达式指针所在位置的任何字符()。
编辑:此外,为了提高性能,您可以添加行锚的开头,这样就不必检查字符串中的任何一个还是两个单词都不在字符串中的每个位置:
^(?=.*foo)(?=.*bar)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句