正则表达式,是一种字符串匹配的模式(pattern),可以用来查找搜索字符串中的某些字符,并可以输出匹配结果,可有时我们想得到不包含某些字符的字符串或者说排除某些字符。

幸运的是,正则也有这个功能,叫断言,顾名思义,这个正则是做判断用的。

常用的断言有4种:

规则 简介
(?=pattern) 非获取匹配,正向肯定预查,在任何匹配pattern的字符串开始处匹配查找字符串,该匹配不需要获取供以后使用。
(?!pattern) 非获取匹配,正向否定预查,在任何不匹配pattern的字符串开始处匹配查找字符串,该匹配不需要获取供以后使用。
(?<=pattern) 非获取匹配,反向肯定预查,与正向肯定预查类似,只是方向相反。
(?<!patte_n) 非获取匹配,反向否定预查,与正向否定预查类似,只是方向相反。

想获取不包含的字符串,首先获取所有字符串:

^.*$

"."代表匹配所有,用((?!pattern).)匹配不包含pattern的所有,结合起来,实现不包含功能:

^((?!pattern).)*$


评论

提交取消回复
[face]@
[uname]  [add_time]
[content]
[reply]
加载更多评论