gpt4 book ai didi

regex - Emacs 用增量序列替换正则表达式

转载 作者:行者123 更新时间:2023-12-03 09:01:56 24 4
gpt4 key购买 nike

我正在尝试找出一种方法,将文本文件中的字符串替换为增量超过 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

变成按顺序放大 S1S2 的东西。

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,对它还很陌生。

最佳答案

是的,您可以在 Emacs 中使用 [query-]replace-regexp 来做到这一点,方法是评估替换中的 elisp,并利用从零开始的替换计数器 \#。例如:

M-x查询正则表达式替换RETS1-S2RET
\,(let ((start (+ 1000 (* 4\#)))) (格式 "%d-%d"start (+ start 3)))RET

关于regex - Emacs 用增量序列替换正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49519627/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com