我有一些 Latex 代码,其中包含很多数学表达式,包含在\mathrm{} 中。我想删除表达式周围的\mathrm{} 代码,最好使用 emacs。例如,我想替换
\mathrm{\gamma \cdot x_0}
和
\gamma \cdot x_0
仅删除\mathrm{ 很容易,但我还需要删除右括号。我怎样才能在emacs中做到这一点?
非常感谢,
远野
最佳答案
您可以使用反向引用来解决此问题。跑
M-x query-replace-regexp
并输入 \\mathrm{\([\a-z0-9_ ]+\)}
在第一个提示下,\1
在第二个提示。query-replace-regexp
的默认键绑定(bind)是 C-M-%。\1
是对第一个括号组 \([\a-z0-9_ ]+\)
的反向引用, 在正则表达式中替换。该组以大括号之间的内容为目标。因此,您要说的是,对于要替换的任何正则表达式,您只想保留该内容。
更多关于替换正则表达式的信息可以查看 here或在相应的info
Emacs 手册的节点。
关于search - 如何在emacs中用括号搜索/替换表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20514460/