正则表达式,不包含多个长度不等字符串

 

由于是长度不相等,所以不能用中括号或的方式,只能是断言检测。

 

工作中同事遇到问题,如下语句

没色差
没有色差
无色差
色差,有色差
色差太大,别的地方穿了才知道了
哈哈哈色差
色差

目标:匹配色差,但是不匹配”没色差”、“没有色差”、“无色差”

可以使用——零宽负向后行断言

但是,如果多个断言条件在里面,应该长度一直,因为他们是同时消费字串的,由于没、没有、无长度不一致,因此增加任意字符”.”,使其一致。

(?<!(没有|.没|.无))色差

虽然断言匹配不占用位置,但是负向检查时会向前检查两个字符,但是如果是行首,则不会检查。

posted on 2018-06-14 18:20 蜗牛随笔 阅读() 评论() 编辑 收藏
版权声明:本文为snailpen原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/snailpen/p/9184405.html