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

Notepad++ 替换记事本中的某些文本++;在预定义列表中使用不同的单词,notepad++,Notepad++,我需要用不同的单词替换记事本++中的相同文本。 比如说 hello user hello user hello user hello user 我需要用Alex、Moody、Tom、Meena、Himangi等来替换“用户”。有几百个,怎么做呢。谢谢。你不能。至少,没有插件是不行的。我不知道有什么插件可以实现这一点 不过,您可以很容易地用Python实现这一点 import re text = """ hello user hello user hello user""" names =

我需要用不同的单词替换记事本++中的相同文本。 比如说

hello user
hello user
hello user
hello user

我需要用Alex、Moody、Tom、Meena、Himangi等来替换“用户”。有几百个,怎么做呢。谢谢。

你不能。至少,没有插件是不行的。我不知道有什么插件可以实现这一点

不过,您可以很容易地用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)
另外,作为记录,我认为有一种更好的方法来编写此代码,但我在工作时无法想到它这应该很简单:

首先,我必须假设你有一张列有你所有名字的名单。例如,我将假设它们保存为txt文件中以空格逗号分隔的列表。(如果情况并非如此,并且您无法理解如何根据您的数据调整示例,请告诉我您的姓名是如何存储的,我将调整答案)

亚历克斯、穆迪、汤姆、米娜、希曼吉

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

  • 查找内容:

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

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

  • 然后按“全部替换”

  • 这将为您提供:

    Hello Alex
    Hello Moody
    Hello Tom
    Hello Meena
    Hello Himangi
    ...
    
    你可以在测试