TeXStudio 中的多行正则表达式

TeXStudio 中的多行正则表达式

我正在使用 TeXStudio 作为我的编辑器。

我在寻找可以匹配占据多行的字符串的正则表达式时遇到了一些困难。

例如,我需要一个与模式 $...$ 匹配的正则表达式,即由两个 $ 括起来的任何内容(包括换行符)。

我尝试了正则表达式 \$[\s\S]*\$,但它仅在两个 $ 之间没有换行符时才有效。另一方面,当我在以下网站上测试此正则表达式时,此正则表达式对换行符有效。

https://regexr.com/

我想知道 TeXStudio 中的正则表达式有什么特别之处。

答案1

回答你最后的问题:我认为 TeXStudio 不支持你所描述的多行匹配。我似乎找不到很多关于其正则表达式引擎的文档,但正则表达式实现存在很多差异,导致出现这样的差异。

为了帮助您解决所遇到的问题:其他编辑器确实支持这样的多行匹配 - 程度不同。如果您只想标记这样的实例,然后手动编辑它们,Notepad++ 的多行匹配就足够了。根据我自己对这个问题的经验,我需要以一种有效的方式复制和粘贴出所有匹配项 - 这是 Notepad++ 无法做到的,但 Sublime Text 可以做到。

PS 我认为您的正则表达式应该是\$[\s\S]*?\$- 添加?以使它变得*“懒惰”。否则,我认为它会一直匹配,直到用尽要匹配的 $s​​。不过,再说一遍,也许这一切都取决于正则表达式的实现……

相关内容