我有很多文本文件,我正在尝试批量查找和替换如下行:
rarePrefixTableLevelMax10,120,
rarePrefixTableLevelMax12,120,
rarePrefixTableLevelMax15,120,
格式基本上是括号内的rarePrefixTableLevelMax[XX],120,
内容可以变化。XX
我有一个正则表达式,可以很好地找到这些行:
rarePrefixTableLevelMax([0-2]?[0-9]|30),120,
问题是我不知道如何用“500”替换“120”,并且只替换有效行。我使用的是一个名为“查找和替换”的程序,又名 fnr.exe,它似乎无法使用正则表达式替换文本,它似乎只支持使用正则表达式进行搜索。
关于我可以使用什么或如何做到这一点,有什么想法吗?
编辑:只是为了清楚起见,我需要同时对多个文件执行此操作,由于文件太多,我无法手动进入每个文件执行此操作。
答案1
- Ctrl+H
- 找什么:
rarePrefixTableLevelMax(?:[0-2]?[0-9]|30),\K120(?=,)
- 用。。。来代替:
500
- 打钩 相符
- 打钩 环绕
- 选择 正则表达式
- Replace all
解释:
rarePrefixTableLevelMax # literally
(?:[0-2]?[0-9]|30) # non capture group, number from 0 upto 30
, # a comma
\K # forget all we have seen until this position
120 # 120
(?=,) # positive lookahead, make sure we have a comma after
截图(之前):
截图(之后):