Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 正则表达式需要匹配单词,但以任何顺序排除其他单词_Regex_Pcre - Fatal编程技术网

Regex 正则表达式需要匹配单词,但以任何顺序排除其他单词

Regex 正则表达式需要匹配单词,但以任何顺序排除其他单词,regex,pcre,Regex,Pcre,我有以下几行代码:- WAN-bridge bridge-WAN WAN-VLAN ether1-WAN <----- ether2-hello ether2-wan2 <----- WAN-BRIDGE wan-bridge bridge-wan vlan918-WAN VLAN-wan wan-ether1 <----- wan-Bridge 我需要一个PCRE正则表达式来匹配任何包含“wan”的行,但不包括“vlan”和“网桥”

我有以下几行代码:-

WAN-bridge
bridge-WAN
WAN-VLAN
ether1-WAN        <-----
ether2-hello
ether2-wan2        <-----
WAN-BRIDGE
wan-bridge
bridge-wan
vlan918-WAN
VLAN-wan
wan-ether1        <-----
wan-Bridge
我需要一个PCRE正则表达式来匹配任何包含“wan”的行,但不包括“vlan”和“网桥”这两个词,无论其顺序和大小写

我已经标出了我想匹配的行

我尝试过这么多的变化,但都没有奏效

任何帮助都将不胜感激。

您可以使用此

^(?=.*wan)(?!.*(vlan|bridge)).*$
^-字符串的开头。 ?=.*wan-正向前瞻。wan的条件必须符合要求。 ?!.*vlan |网桥-负前瞻。vlan和网桥的条件不能一致。 .*-匹配除新行以外的任何内容。 $-字符串的结尾。
你试过什么,什么不起作用?