Applekdz
@Applekdz

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

EmEditorで何万パターンもの一括した正規表現検索、抽出、消去は、どうすればできますでしょうか?

お世話になっております。いつもありがとうございます。

この質問は、この質問と似ているのですが、正規表現でやるというところと抽出と消去両方という点が違います
https://qiita.com/Applekdz/questions/f98ccaff73b30edf52a9

やりたいのは、データベースの大量なパターンと一致する正規表現の検索の一致部分だけ抽出したり消したりできる機能です。

正規表現で検索するのと同様ですが、パターンの登録条件を何万パターンとなると正規表現では扱いにくいので同じことができる方法をさがしています。
例文をつくりました。

例文 これが何百万行とか何千万行もあるとします。
▼もんどやくじんとうこうじ▲◆門戸厄神東光寺■
▼もるでぃぶきょうわこく▲◆モルディブ共和国■
▼みやぎけんごこくじんじゃ▲◆宮城縣護國神社■
▼にうかんしょうぶじんじゃ▲◆丹生官省符神社■
▼たまがわせんげんじんじゃ▲◆多摩川浅間神社■
▼とよたしうんどうこうえん▲◆豊田市運動公園■
▼きしわだだんじりまつり▲◆岸和田だんじり祭■
▼かんはっしゅうみはらしだい▲◆関八州見晴台■
▼きよしこうじんせいちょうじ▲◆清荒神清澄寺■
▼きゅういわさきていていえん▲◆旧岩崎邸庭園■
▼ごくらくじざかきりどおし▲◆極楽寺坂切通し■
▼しんじゅくぎょえんまええき▲◆新宿御苑前駅■
▼おしょろかんじょうれっせき▲◆忍路環状列石■
▼くるしまかいきょうおおはし▲◆来島海峡大橋■
▼しゃいにんぐさおとめ▲◆シャイニング早乙女■

正規表現の条件にするデータベース側 これが何千パターンもあるとします
"▲"と、くっついているパターンに一致する行の場合のみ抽出したり消したいのです。

わこく▲
じんじゃ▲
こうえん▲
まつり▲

一致して残ったり、消せる結果は
▼もるでぃぶきょうわこく▲◆モルディブ共和国■
▼みやぎけんごこくじんじゃ▲◆宮城縣護國神社■
▼にうかんしょうぶじんじゃ▲◆丹生官省符神社■
▼たまがわせんげんじんじゃ▲◆多摩川浅間神社■
▼とよたしうんどうこうえん▲◆豊田市運動公園■
▼きしわだだんじりまつり▲◆岸和田だんじり祭■

これを正規表現で書くと抽出の場合だと以下のようになりますが、何万パターンもある場合は正規表現にして検索するのはやりくいです。
^(?!.(わこく▲.|じんじゃ▲.|こうえん▲.|まつり▲.*)).+$

少量のパターン検索だとこれでいけましたが、できるとしても検索行がメチャクチャながくなりますし、手間がかかります。

マクロにすると

batch_list.AddReplace("^.*わこく▲.*$","",eeFindReplaceRegExp,0);

このような置換マクロを作って変換していけば可能ですが毎回の手間はかかります。

これと同じことを別の方法で、簡単にやるのはどうすればいけますでしょうか?
もし、やり方が複雑な工程になる場合は、これと同じことを簡単に、すぐ、パッと容易にできる機能をバージョンアップしていただけませんでしょうか。

たとえば正規表現インクルード機能とかです。

よろしくお願いいたします。

追記
置換でマクロをつくる方法であればできました。
一度照合するのに2分くらいの手間はかかりますので、これを検索置換くらいに10秒くらい出来る方法があると幸いです。

追記
別のファイルの検索結果を正規表現に代入するとかは可能でしょうか?

0

1Answer

Comments

  1. @Applekdz

    Questioner

    ありがとうございます。

Your answer might help someone💌