置換(Ver8.91対応版)
目次検索系コマンド− 置換
 置換コマンドは、文字列を検索してそれをほかの内容に置き換えるコマンドです。検索する文字列、検索方法、置き換える文字列を指定して実行します。
上検索、下検索
 上検索ボタンは、現在のカーソル位置から前の部分を検索します。
 下検索ボタンは、現在のカーソル位置から後ろの部分を検索します。
 ボタンにはキー割り当てで上候補又は下候補に設定されたキー名が表示されていますので、連続して検索文字列を検索して置換する場合は、表示されているキーを押すことで置換処理を連続で行うことが出来ます。

全置換
 全て置換します。「置換の前に確認」がONになっている場合は、カーソル位置を先頭に移動してから確認ダイアログが出ます。
 右側の三角ボタンを押すと、「適用して閉じる」の操作もできます。
 「適用して閉じる」をした場合は、何も置換せず、入力された検索文字列,置換文字列や検索オプションなどを更新して、ダイアログを閉じます。

 クイック全置換
 全置換ボタンの右側の▼ボタンから「クイック全置換」の操作ができます。
 クイック全置換は対象のテキストを全て入れ替えるような高速の置換をします。
 通常の全置換は下候補を繰り返すような動作であるのに対し、クイック全置換は全てのテキストをまるごと置き換えます。
 以下のような違いがあります。
  • 置換後のカーソル位置が通常の全置換とは違います。
  • マーク、編集マーク、折りたたみ、カラーマーカーは保持されません。(編集マークは全行に付きます)
  • 「追加の条件」、\(タグ番号,関数名)による変換モジュール指定、「次の秀丸エディタも続けて置換」はできません。
  • 正規表現に以下の処理の違いがあります。
    置換後のテキストが再び検索対象にはならず、元のテキストのみが検索対象になります。
    例えば「^a」を「a\n」に置換で、対象テキストが「aaaaa」の場合、行頭の1つだけになります。
    「\n」や「[^...]」で改行がヒットする可能性がある場合は全行が対象になります。(?#maxlines:)や(?#fulllinematch)の指定は無視されます。
  • 「選択した範囲内のみ」は行単位ではなく文字単位になり、置換後は「選択した範囲内のみ」で動作中の範囲にはならず、通常のままになります。
  • 改行コードが混在する場合、全ての行で統一された改行コードになります。
 注意:多くの場合は高速になりますが、検索文字列に改行を含んで長さが変わるような正規表現の場合、全行がとても長い一行と同じようなことになり、逆に遅くなる場合があります。

検索文字列
 検索する文字列を入力します。

 入力ボックス(コンボボックス)の右横に「>」のような三角マークのボタンがあり、検索文字列に関する操作ができます。
 複数行に切り替える操作ができます。(複数行について
 正規表現がONの場合は、正規表現の入力を補助します。
 このボタンは、Alt+[のキー操作でも押すことができます。

 参照: 機種依存文字について

置換文字列
 置換する文字列を入力します。

 入力ボックス(コンボボックス)の右横に「>」のような三角マークのボタンがあり、置換文字列に関する操作ができます。
 複数行に切り替える操作ができます。(複数行について
 正規表現がONの場合は、正規表現の入力を補助します。
 このボタンは、Alt+]のキー操作でも押すことができます。

大文字/小文字の区別
 ONにすると大文字と小文字を別の文字と見なして検索します。

単語の検索
 ONにすると、単語だけを検索します。
 例えばC言語のプログラムなどで変数 i を検索したい場合など、普通に i で検索すると、 int の i などでも止まってしまって不便ですが、単語の検索をONにすれば変数の i だけで止まってくれます。

正規表現
 置換に正規表現を使用する場合はONにします。
 「大文字/小文字の区別」「単語の検索」のチェック状態も反映します。(V4.00以降)
 正規表現検索に使用されるDLLファイル名とそのバージョンが表示されています。
 正規表現検索で使用するDLLの変更は、[動作環境]-[環境]で行うことができます。
 置換の場合は、置換後の文字列には「\t」と「\n」以外のエスケープシーケンスは使えません。
 タグ付き正規表現による置換をサポートしています。
 参照: 正規表現  HmJre.dllのヘルプ HmJre.dllのヘルプ
 参照: タグ付き正規表現(一般的正規表現互換)
 参照: タグ付き正規表現(秀丸エディタ独自)
 参照: \nを使った複数行検索の際の制限について
 参照: 変換モジュールによる変換の指定

あいまい検索
 検索したい文字列が全角文字か半角文字かがはっきりしない場合にONにします。
 このオプションをONにすることで、例えば「バージョン」という文字列を検索すると、テキスト中の「バージョン」 という文字列はもちろんのこと、半角で書かれた「バージョン」という文字列も探し出します。逆に「バージョン」と、 半角で書かれた文字列を検索しても「バージョン」と「バージョン」の両方がマッチします。 ただし、メタキャラクタはあいまい検索の対象外です。
 このオプションをONにした場合正規表現用に使用しているDLLによって次のような動作になります。
  • 正規表現DLLにHmJre.dllを使用している場合
     このオプションをONにすると設定ボタンが押せるようになりあいまい検索の詳細設定が行えるようになります
  • 正規表現DLLにJRE32.DLLを使用している場合
     このオプションをONにすると大文字/小文字の区別のオプションはONになります


選択した範囲内のみ
 選択した範囲だけで検索を行いたい場合にONにします。範囲選択していない場合は使用できません。
 BOX選択では使用できません。

 範囲は行単位になります。
 文字単位にするには、「追加の条件」で「指定の範囲/カラーマーカー内」で、例えば範囲選択をカラーマーカーにした状態にして、カラーマーカーの条件に指定すると文字単位の範囲に限定することができます。
 カラーマーカーは「編集したら削除」をOFFの状態になっている必要があります。

次の秀丸エディタも続けて置換
 これをONにすると、複数の秀丸エディタを開いている場合次の秀丸エディタも続けて置換することができます。
 全置換の場合は、開いている秀丸エディタ全てを全置換することができます。

一周する
 これをONにすると、一番下まで検索し終わった場合、先頭に戻って検索します。上検索の場合は逆になります。

追加の条件
 これをONにすると、追加の条件に従って検索する範囲を制限できます。
 カラー表示の条件は、[ファイルタイプ別の設定]→[デザイン]→[複数行コメント]で指定される強調表示があるときに働きます。
 このオプションのチェック状態はダイアログを出すたびにOFFになります。

検索文字列を強調
 これをONにすると、検索を実行後、検索に該当する文字列を強調表示します。
 強調された検索文字列を解除するには、Escキーを押すか、[検索]→[検索文字列の強調]を選ぶと解除されます。
 強調されていないときに[検索]→[検索文字列の強調]を選ぶと再び強調されます。

置換の前に確認
 置換コマンドでは、さらに「置換の前に確認」というオプションがあり、これがONの場合はひとつひとつ置換する前に本当に置換するかどうかの確認をします。
 置換の確認時には、R,C,N,P,Escのほか、上候補/下候補コマンド(標準でF3とShift+F3)、Ctrl+Home、Ctrl+Endも有効です。
 置換の確認ダイアログは[その他]→[動作環境]→[検索]→[検索ダイアログ]の「置換の確認の種類」で、種類を変更できます。