我想在文件中查找与t [A-Z]
u形式的正则表达式匹配的任何文本(即,匹配t后跟一个大写字母和另一个匹配u,并转换匹配的文本,使大写字母为小写。例如,对于正则表达式x[A-Z]y
xAy
变成
xay
和
xZy
变成
xzy
Emacs 的query-replace
功能允许反向引用,但 AFAIK 不允许匹配文本的转换。有没有内置函数可以做到这一点?有人有我可以使用的简短 Elisp 功能吗?
更新
@Marcel Levy 有它:\,
在替换表达式中引入了(任意?)Elisp 表达式。例如,上面的解决方案是
M-x replace-regexp <RET> x\([A-Z]\)z <RET> x\,(downcase \1)z