部分文字列検索による2つの文字列の差

部分文字列検索による2つの文字列の差

Notepad++ を使用して、2 つの文字列を部分文字列レベルで比較することは可能だと思いますか?

リスト1の要素がリスト2に存在するかどうかを確認します。存在する場合は削除します。最後に、一意の要素のみを返します。

list1    - "a" "b" "a" "a" "c" "f" "g"
list2    - "a" "c" "a" "f"
-------------------
result   - "b" "g"

list1 と list2 は 2 つの別々のファイル、または 2 つの別々の行にすることができます。要素はカンマで区切ることも、空白/スペースバーで区切ることもできます。

知っていたら嬉しいです。よろしくお願いします!

答え1

私は段階的なアプローチを見つけました:

  1. 行内の繰り返しを削除します。
    • 探す(.*)("[a-z]*")(.*)\2(.*)
    • 置き換える\1\3\4
    • 「すべて置換」を押します(すべてを削除するには、複数回繰り返す必要がある場合があります)
  2. 両方の行で見つかった部分文字列を削除します。
    • 探す(.*)("[a-z]*")(.*)\r\n(.*)\2(.*)
    • 置き換える\1\3\r\n\4\5
    • 「すべて置換」を押します(繰り返しますが、すべてを削除するには複数回繰り返す必要がある場合があります)

これは、行内の項目が"文字で囲まれていて、小文字のみが含まれている場合に機能しますが、おそらくニーズに合わせて変更する必要があるでしょう。

関連情報