[すべて連続置換] と [すべて一括置換] の違い

[すべて連続置換] は一度に文書全体で 1つの文字列を検索して、この手順を文字列の数だけ繰り返します。その一方、[すべて一括置換] は、すべての検索文字列を同時に検索します。この違いは、次のような場合に、異なる結果をもたらします。それは、例えば、検索/置換文字列に、

1 → 5

2 → 4

4 → 2

5 → 1

といったペアが含まれていて、元の文書が

[1,2,3,4,5]

となっていた場合です。

この場合、[すべて連続置換] を使用すると、EmEditor は最初に文書全体の 1 を 5 に置換します。そして、2 を 4 に置換します。この時点で、元の文書は次のようになります。

[5,4,3,4,5]

次に、4 を 2 に置換する時、2つの 4 (2番目と4番目の数字) を置換することに注意してください。最後に、5 を 1 に置換する時、2つの 5 (最初と最後の数字) を置換します。したがって、結果は次のようになります。

[1,2,3,2,1]

新しい [すべて一括置換] を使用すると、EmEditor はすべての文字列を同時に置換します。したがって、結果は、期待通り、次のようになります。

[5,4,3,2,1]

[すべて一括置換] は、[すべて連続置換] よりもずっと高速に動作します。私共のテストでは、100万件の検索/置換ペアが存在する場合、[すべて一括置換] は、[すべて連続置換] より 6310 倍も高速に動作しました ( Version 21.7 のテスト結果を参照)。

[すべて一括置換] は正規表現、数値範囲、改行を含む検索文字列をサポートしていません。