Linux 拨号vps windows公众号手机端

详解正则表达式后面不要包含指定的字符串内容

lewis 6年前 (2019-01-22) 阅读数 7 #程序编程
文章标签 正则表达式

在正则表达式中,可以使用负向前瞻(negative lookahead)来实现后面不包含指定字符串内容的匹配。

负向前瞻使用 (?!pattern) 的形式,其中 pattern 是要排除的字符串内容。具体的用法如下:

  1. 匹配不包含指定字符串的任意字符:
^(?!.*pattern).*

这个正则表达式会匹配任意字符,但是排除了包含 pattern 的字符串。

  1. 匹配不包含指定字符串的单词:
\b(?!pattern\b)\w+\b

这个正则表达式会匹配不包含以 pattern 结尾的单词。

  1. 匹配不包含指定字符串的整个单词:
\b(?!.*pattern\b)\w+\b

这个正则表达式会匹配整个字符串中,不包含以 pattern 结尾的单词。

需要注意的是,负向前瞻只是检查后面的内容是否满足条件,并不会消耗输入字符串。因此,如果需要匹配整个字符串,需要在正则表达式的开头加上 ^,在结尾加上 $

以上是使用负向前瞻来实现后面不包含指定字符串内容的方法。根据具体的匹配需求,可能需要进行一些调整。

版权声明

本文仅代表作者观点,不代表米安网络立场。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门