搜索和增量替换
search and incremental replace
我有一些短信。我试图用从 1 开始的数字替换 [] 中的数字,然后以增量方式替换。是否可以使用记事本++中的正则表达式搜索和替换功能。
pig[1]
chicken[2]
monkey[3]
duck[7]
goat[4]
buffalo[5]
输出>>
pig[1]
chicken[2]
monkey[3]
duck[4]
goat[5]
buffalo[6]
您可以分两步完成这项工作:
- 第一步
- 将光标移动到第一行的开头
- Select,在编辑菜单中,以列模式编辑(我不确定标签,因为我没有英文版本)你可以输入 Alt+C
- 在弹出的window中选择初始数和增量然后点击确定
- 第二步:
- Ctrl+H
- 查找内容:
(\d+)(.+?)\[\d+\]
- 替换为:
[]
- 然后点击全部替换
正则表达式解释:
( : Start group 1
\d+ : 1 or more digits
) : End group 1
( : Start group 2
.+? : 1 or more any character except linebreak non greedy
) : End group 2
\[\d+\] : 1 or more digits enclosed in brackets
替换零件:
: Content of group 2 (ie. word before the opening braket: pig, chicken, ...)
[] : Content of group 1 (ie. the number generated in step 1), enclosed in brackets
我有一些短信。我试图用从 1 开始的数字替换 [] 中的数字,然后以增量方式替换。是否可以使用记事本++中的正则表达式搜索和替换功能。
pig[1]
chicken[2]
monkey[3]
duck[7]
goat[4]
buffalo[5]
输出>>
pig[1]
chicken[2]
monkey[3]
duck[4]
goat[5]
buffalo[6]
您可以分两步完成这项工作:
- 第一步
- 将光标移动到第一行的开头
- Select,在编辑菜单中,以列模式编辑(我不确定标签,因为我没有英文版本)你可以输入 Alt+C
- 在弹出的window中选择初始数和增量然后点击确定
- 第二步:
- Ctrl+H
- 查找内容:
(\d+)(.+?)\[\d+\]
- 替换为:
[]
- 然后点击全部替换
正则表达式解释:
( : Start group 1
\d+ : 1 or more digits
) : End group 1
( : Start group 2
.+? : 1 or more any character except linebreak non greedy
) : End group 2
\[\d+\] : 1 or more digits enclosed in brackets
替换零件:
: Content of group 2 (ie. word before the opening braket: pig, chicken, ...)
[] : Content of group 1 (ie. the number generated in step 1), enclosed in brackets