我正在尝试找出一种方法,将文本文件中的字符串替换为增量超过 1 的数字。我正在尝试将以下几行转为这样:
result_A_in_S1-S2.txt
result_A_in_S1-S2.txt
result_A_in_S1-S2.txt
result_A_in_S1-S2.txt
变成按顺序放大的东西S1
and S2
.
result_A_in_1000-1003.txt
result_A_in_1004-1007.txt
result_A_in_1008-1011.txt
result_A_in_1012-1015.txt
我想知道是否可以使用替换正则表达式定义一个字符串,然后将该字符串替换为某个起始数字,并且当它找到下一个出现的字符串时,它会替换为起始数字+所选增量。
我刚刚开始学习Emacs,对它还很陌生。
是的,就是你can使用 Emacs 中的 [query-]replace-regexp 来完成此操作,方法是评估替换中的 elisp,并利用从零开始的替换计数器\#
. e.g.:
M-x
query-regexp-replace
RET
S1-S2
RET
\,(let ((start (+ 1000 (* 4 \#)))) (format "%d-%d" start (+ start 3)))
RET
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)