当前位置:   article > 正文

使用正则表达式匹配任意字符(包含换行符)_正则表达式匹配开头结尾中间任意

正则表达式匹配开头结尾中间任意

今天工作中需要用到正则来进行部分相同段落全量删除,突然忘记怎么写了,特地记录一下!

公式:[\s\S]

使用上述公式就能匹配任意字符,但是仅输入上述公式,我们只能匹配到一个字符,所以,还需要加上"*"通配符来匹配多个字符。比如我要匹配以BEGIN_NAMESPACE(abc)开头,以END_NAMESPACE(abc)结尾的所有段落,我们就可以这么写:

(BEGIN_NAMESPACE\(abc\))([\s\S]*)(END_NAMESPACE\(abc\))

但时,这样会发生有一个问题,他只会匹配全文中第一个BEGIN_NAMESPACE(abc)和最后一个END_NAMESPACE(abc),也就是中间包含的内容都会被忽略,最终只找到一个结果。这样很显然不是我们想要的结果,所以我们就需要使用"?"通配符来实现懒惰匹配,最终结果如下:

(BEGIN_NAMESPACE\(abc\))([\s\S]*?)(END_NAMESPACE\(abc\))

(注:本篇博客需要有一定的正则基础才能看懂哦)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/113627
推荐阅读
相关标签
  

闽ICP备14008679号