正则expression式以任意顺序匹配包含两个名字的string
我需要在逻辑与正则expression式。
就像是
杰克和詹姆斯
同意以下string
-
'嗨杰克这里是詹姆斯 '
-
“你好, 詹姆斯这里是杰克 ”
您可以使用lookarounds进行检查:
^(?=.*\bjack\b)(?=.*\bjames\b).*$
testing它。
这种方法具有可以轻松指定多个条件的优点。
^(?=.*\bjack\b)(?=.*\bjames\b)(?=.*\bjason\b)(?=.*\bjules\b).*$
尝试:
james.*jack
如果你同时需要,那么or
他们:
james.*jack|jack.*james
我要写的命令的解释 :
.
指的是任何字符,数字都可以代替。
*
表示在它之前的事物的一个或零发生。
|
意思是“或” 。
所以,
james.*jack
会searchjames
,然后任何数量的字符,直到jack
来。
既然你想要jack.*james
或james.*jack
因此命令 :
jack.*james | james.*jack
你可以做:
\bjack\b.*\bjames\b|\bjames\b.*\bjack\b