用预定义列表中的不同单词替换Notepad ++中的某些文本

时间:2013-12-09 19:52:45

标签: notepad++

我需要用不同的单词替换notepad ++中的相同文本。 例如

hello user
hello user
hello user
hello user

我需要用Alex,Moody,Tom,Meena,Himangi等替换“用户”。有数百人在那里,怎么办呢。感谢。

2 个答案:

答案 0 :(得分:1)

这应该很简单:

首先,我必须假设你有一个包含所有名字的列表。例如,我将假设它们被保存为txt文件中的空格逗号分隔列表。 (如果不是这种情况,您无法理解如何使示例适应您的数据,请告诉我您的名称是如何存储的,我会调整答案)

  

Alex,Moody,Tom,Meena,Himangi,......

然后转到Search> Replace菜单(快捷键 CTRL + H )并执行以下操作:

  1. 找到:

    ([a-zA-Z]+)(?:, )?
    
  2. 替换为:

    Hello $1\n
    
  3. 选择单选按钮“正则表达式”

  4. 然后按“全部替换”

  5. 这会给你:

    Hello Alex
    Hello Moody
    Hello Tom
    Hello Meena
    Hello Himangi
    ...
    

    您可以在regex101进行测试。

答案 1 :(得分:0)

你做不到。至少,不是没有插件。而且我不知道有一个插件。

你可以很容易地在Python中完成这个。

import re

text = """
hello user
hello user
hello user"""

names = [ "name1", "name2", "name3" ]

for name in names:
    text = re.sub("user", name, text, count=1)

另外,为了记录,我认为有更好的方法来编写这段代码,但是在我工作的时候我想不到它。 :P