0

次の場合は重複を削除する必要があります

key = anything

しかし、そうではありません

key=anything

キーも何でもかまいません

edit_home=homeを配置する必要があります

edit_home = home または他の文字列さえも削除する必要がありますedit_homeが重複している場合

ドキュメントのすべての行に対して

ありがとうございました

psより明確な例:

one=you are
two=we are
three_why=8908908
one = good
two = fine
three_4 = best
three_why = win

そのリストから、私は保持する必要があるだけです:

one=you are
two=we are
three_why=8908908
three_4 = best // because three_4 doesn't have a duplicate

私はそれを行う方法を見つけましたが、正規表現、プラグイン、または直接正規表現 (私にはわかりません) によるより良い検索リストのサポートが必要です。

つまり、比較するファイルが 2 つあります。

1 つには完全なキーがあり、もう 1 つには不完全なキーがあります。

新しいファイルで、最初のファイルのすべてのキーを 2 番目のファイルのキーとグループでマージします (キーはグループになっているため、たとえば、1 というタイトルの多くのキー、2 というタイトルの多くのキーなど...)。次に、新しいファイルのすべてのキーを正規表現で置き換えます

find (.*)(\s\=\s) replace with \1\=

だから彼らはすべてになるkey=anything

次に、キーを分離するために = の後のすべてを空に置き換えます。

次に、重複を削除します。

この時点で、私は次のようなことをするのに苦労しています

^.*(^keyone\b|^keytwo\b|^keythree\b).*$

必要なドキュメント内のすべてのキーを見つけるために。そのため、すべてを選択して正しいキーに置き換えることができます。

なんで?この例では、キーは 3 つしかありませんが、実際にはキーが多く、検索フィールドが特定のポイントで壊れているためです。

それを正しく行う方法は?

更新: 多くの文字列を検索できる Toolbucket プラグインを見つけましたが、もう 1 つの問題は、複製に加えて、元の文字列も削除する必要があることです。

つまり、同じキー「1」が 2 回見つかった場合、1 を含むすべての行を削除する必要があります。

4

3 に答える 3

0

Ctrl+F

検索タブ

何を見つける^.*\S=\S.*$

現在のドキュメント内をすべて検索

結果ウィンドウから新しいウィンドウに結果をコピーします (行 1: 行 2: 行 3: ... のリスト)

Ctrl+F

タブを置換

(以下は、すべての行から先頭の「行番号:」を削除します)

何を見つける^.*?\d:\s

置換: 空

于 2014-11-13T18:53:46.213 に答える