好的,这个正则表达式似乎与我正在测试它的网址中的 action = admin 不匹配。但我也需要排除 action = dream 。如何将其添加到以下正则表达式...
'~\b((?!\?action=admin)[-a-zA-Z0-9+&@#/%?=\~_|!:,.;\[\]]*[-a-zA-Z0-9+&@#/%=\~_|\[\]]?)([^-a-zA-Z0-9+&@#/%=\~_|])~'
尝试了以下内容......
'~\b((?!\?action=(admin|dream))[-a-zA-Z0-9+&@#/%?=\~_|!:,.;\[\]]*[-a-zA-Z0-9+&@#/%=\~_|\[\]]?)([^-a-zA-Z0-9+&@#/%=\~_|])~'
但这会给人不好的结果......
答案 0 :(得分:1)
您的问题是您希望admin|dream
没有实际捕获值(这是您的第二个示例所做的)。为此,您希望使用(?: )
,如下所示:
(?!\?action=(?:admin|dream))