美文网首页
正则替换

正则替换

作者: 遥远的清平湾 | 来源:发表于2020-10-24 15:17 被阅读0次

用notepad++批量取消字体标蓝
查找目标为:
\\textcolor\{blue\}\{(?<content>[\s\S][^\\]*?)\}
替换为:
\1
上面的替换没有替换包含引用的标蓝字体,因为“\ref{}”中也有右大括号,会影响正则替换。

解析:

  • 上面的\\表示查找\符号。
  • \{表示查找{符号。
  • \}表示查找}符号。
  • (?<content>要查找的模式)为固定用法,匹配要查找的模式,并把结果返回,用\1, \2这样的方式引用。
  • [\s\S]*? 表示匹配任意字符,包含回车字符,如果替换为.,则表示匹配不包含回车字符的任意字符;\*表示前面的内容[\s\S]出现任意次,为贪婪原则,即尽可能多的匹配;*后面加上?表示非贪婪原则,即找到第一个满足要求的规则就行。
  • 因为[\s\S]*? 也会匹配\,因为\后面大多数跟着大括号{},所以当匹配的内容中包括{}时会有问题,所以要求匹配的内容中没有\符号,用[^\\]实现,^表示非的意思。也可以替换成[^{^}]。

https://zhidao.baidu.com/question/541722218.html
http://faq.locoy.com/q-1064.html
https://www.runoob.com/regexp/regexp-rule.html

相关文章

网友评论

      本文标题:正则替换

      本文链接:https://www.haomeiwen.com/subject/yooimktx.html