简体   繁体   English

如何使用正则表达式匹配除特定模式以外的所有内容

[英]how to match everything except a particular pattern using regex

After a half hour searching I failed. 经过一个半小时的搜索,我失败了。 Now I am trying to match everything except the given word. 现在我正在尝试匹配给定单词以外的所有单词。

I am trying to match /user/* except one word login . 我正在尝试匹配/user/*除了一个单词login

Examples: 例子:

/user/test  match!
/user/loginno match!
/user/login  not match!

My regex is: ^/user/(?!login)(.*) but I can not make /user/loginno match ): 我的正则表达式是: ^/user/(?!login)(.*)但我无法使/user/loginno匹配):

^/user/(?!login\\b)(.*)

I altered your regex by requiring there to be a word boundary after login for the lookahead to match, eg login followed by a non alphanumerical character (space or / for example). 我更改了您的正则表达式,要求登录后必须有一个单词边界,以使前行匹配,例如登录后必须是非字母数字字符(例如,空格或/)。 It seems to work. 似乎有效。

^\/user\/(?!login\b)(.*)

这是转义正斜杠后的更正正则表达式

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM