LaTeX批量移除{\color{blue}...}

2023-10-30
#LaTeX

1. 步骤

核心:使用正则表达式进行全文替换。

  1. Sublime 打开tex文件

  2. 使用 FindReplace

情况1(一般情况):不含有内嵌括号

{\s*\\color\s*{blue}\s*([^{}]*)}

替换为

$1

情况2:最大3层内嵌括号

{\s*\\color\s*{blue}\s*([^{}]*({[^{}]*({[^{}]*({[^{}]*}[^{}]*)*}[^{}]*)*}[^{}]*)*)}

替换为

$1

情况3:最大5层内嵌括号

{\s*\\color\s*{purple}\s*([^{}]*({[^{}]*({[^{}]*({[^{}]*({[^{}]*({[^{}]*}[^{}]*)*}[^{}]*)*}[^{}]*)*}[^{}]*)*}[^{}]*)*)}

替换为

$1

情况4:最大10层内嵌括号

{\s*\\color\s*{purple}\s*([^{}]*({[^{}]*({[^{}]*({[^{}]*({[^{}]*({[^{}]*({[^{}]*({[^{}]*({[^{}]*({[^{}]*({[^{}]*}[^{}]*)*}[^{}]*)*}[^{}]*)*}[^{}]*)*}[^{}]*)*}[^{}]*)*}[^{}]*)*}[^{}]*)*}[^{}]*)*}[^{}]*)*)}

替换为

$1

参考