【发布时间】:2018-12-31 17:06:09
【问题描述】:
notepad++中如何用随机单词替换不同行中的相同单词
test
test
test
test
将替换为随机字符串:
sdwd
sasd
wdsa
dsas
【问题讨论】:
-
你不能用 Notepad++ 做这样的工作。你必须用你最喜欢的脚本语言编写脚本。
标签: notepad++
notepad++中如何用随机单词替换不同行中的相同单词
test
test
test
test
将替换为随机字符串:
sdwd
sasd
wdsa
dsas
【问题讨论】:
标签: notepad++
正则表达式本身不会生成随机数据。它们只能匹配某种模式。它们也可用于替换某些模式,但替换必须是固定的,或者基于输入数据。因此,如果您需要一些随机替换,则需要正则表达式和一些编程语言(通常是 脚本)
即便如此,如果您不介意预先生成一些随机单词,您仍然可以通过 宏 使用 notepad++ 来完成此任务。
这个想法是有一个具有这种结构的文件:
The data
you want
to substitute
<SOME DELIMITER>
a list of random words
there must exist enought quantity of words/strings
<SOME DELIMITER>
例如:
a test on the first test phrase
a second test on the second test phrase
some test some test
some test some test
some test some test
some test some test
some test some test
some test some test
@@@@@@@@
qpfdhong
vvbpkwhi
aqhvuxxi
vtgaxofv
vwclbdxf
ecspqfdp
qqfimcum
bfqznfsa
pjwzjvzz
ybgvxzcl
tvsxpczg
hczduhkk
ydryudel
gnayvwjs
lncmqude
spilblsk
@@@@@@@@
您可以在此页面上生成随机单词/字符串:https://www.random.org/strings/
所以想法是使用宏来记录这些动作:
录制宏后,请记住您可以保存它以供以后重复使用。这样就不用再录了。
这是录制宏的过程:
\btest\b(?=[\s\S]*\r?\n@@@@@@@@\r?\n(\w+))(其中 'test' 是要替换的单词,而 '@@@@@@@@' 是随机单词的分隔符)\1
@@@@@@@@\r?\n\K
Run a macro multiple times 按钮播放宏结果:
a qpfdhong on the first vvbpkwhi phrase
a second aqhvuxxi on the second vtgaxofv phrase
some vwclbdxf some ecspqfdp
some qqfimcum some bfqznfsa
some pjwzjvzz some ybgvxzcl
some tvsxpczg some hczduhkk
some ydryudel some gnayvwjs
some lncmqude some spilblsk
@@@@@@@@
@@@@@@@@
最后,这是一个过程的视频。
请记住,如果您已经录制并保存了宏,则只需运行第 17 步到第 20 步。
【讨论】: