不包含某个字符串的正则

正则群的问题:不以DWR开头 但是以 JS 结尾的正则:

答案:^((?!DWR)\w)*JS$

缺点:不能满足以DWR开头这个需求,但是可以满足不包含DWR这个字符串这个需求。

参考JS文档:

(?!pattern)

负向预查,在任何不匹配Negative lookahead matches the search string at any point where a string not matching pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如'Windows (?!95|98|NT|2000)' 能匹配 "Windows 3.1" 中的 "Windows",但不能匹配 "Windows 2000" 中的 "Windows"。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始

原文地址:https://www.cnblogs.com/sunwei2012/p/1699346.html