如何用记事本++中的随机单词替换不同行中的相同单词
test
test
test
test
将替换为随机字符串:
sdwd
sasd
wdsa
dsas
答案 0 :(得分:1)
正则表达式本身不会生成随机数据。它们可以匹配特定的模式。它们也可以用来替换某些模式,但是替换必须是固定的,或者必须基于输入数据。因此,如果需要随机替换,则需要正则表达式和某种编程语言(通常是 scripts )
即使如此,如果您不介意预先生成一些随机单词,则仍然可以通过宏使用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的步骤即可。