使用 EmEditor,我想删除占据整行加上它上面的行的字符串的所有重复实例。例如,在本文中,重复的字符串是Cyperus esculentus(它可以是其他任何东西),我希望删除它的所有重复实例,包括前一行,即语言代码。到目前为止,我发现是这样的:
.{2,3} \nCyperus esculentus\n
但问题是我必须用每个不同文本中重复的字符串替换重复的字符串。
ar
سعد لذيذ
ast
Cyperus esculentus
azb
یئمهلی توپالاق
az
Yeməli topalaq
bo
ཆུ་འབྲུམ།
ca
Xufa
ceb
Cyperus esculentus
cs
Šáchor jedlý
de
Erdmandel
en
Cyperus esculentus
eo
Cyperus esculentus
es
Cyperus esculentus
eu
Bedaur
fa
اویار سلام زرد
fr
Souchet comestible
gl
Xunca doce
ha
Aya
he
גומא נאכל
id
Cyperus esculentus
it
Cyperus esculentus
ja
ショクヨウガヤツリ
la
Cyperus esculentus
nl
Knolcyperus
nv
Tłʼohigaaí
pl
Cibora jadalna
pt
Cyperus esculentus
ru
Чуфа
srn
Affo
sv
Jordmandel
th
แห้วไทย
tr
Yer bademi
uk
Смикавець їстівний
uz
Yerbodom
vi
Củ gấu tàu
war
Cyperus esculentus
zh
油莎草
预期的结果是应用我上面提到的正则表达式后剩下的(澄清一下,在这些文本中只有一个可以重复的字符串,因此正则表达式不必寻找多个不同的重复字符串):
ar
سعد لذيذ
azb
یئمهلی توپالاق
az
Yeməli topalaq
bo
ཆུ་འབྲུམ།
ca
Xufa
cs
Šáchor jedlý
de
Erdmandel
eu
Bedaur
fa
اویار سلام زرد
fr
Souchet comestible
gl
Xunca doce
ha
Aya
he
גומא נאכל
ja
ショクヨウガヤツリ
nl
Knolcyperus
nv
Tłʼohigaaí
pl
Cibora jadalna
ru
Чуфа
srn
Affo
sv
Jordmandel
th
แห้วไทย
tr
Yer bademi
uk
Смикавець їстівний
uz
Yerbodom
vi
Củ gấu tàu
zh
油莎草
这对我有用
document.selection.StartOfDocument(false);
document.DeleteDuplicates("",eeIncludeAll);
document.selection.Replace("([a-z]{2,3} \\n)([a-z]{2,3} \\n)","\\2",eeFindReplaceCase | eeReplaceAll | eeFindReplaceRegExp,0);
document.selection.Replace("([a-z]{2,3} \\n)([a-z]{2,3} \\n)","\\2",eeFindReplaceCase | eeReplaceAll | eeFindReplaceRegExp,0);
document.selection.Replace("([a-z]{2,3} \\n)([a-z]{2,3} \\n)","\\2",eeFindReplaceCase | eeReplaceAll | eeFindReplaceRegExp,0);