8.2.2.5 検索と置換

ある文字列が文章の中で現れる位置を調べること「検索」といいます.また,ある文字列を別の文字列に置き換えることを「置換」といいます.mi でこれらの操作をする方法を説明します.

検索

文字列の検索をするには mi のメニューで 検索検索/置換 を選ぶか,キーボードから f と入力します.すると,次のようなダイアログが出てきます.
8_2_2_5_a
「検索文字列」の下のテキストボックスに検索したい文字列を入力して,「次を検索」ボタンを押します.図は,検索文字列として「はいぱーワークブック」という文字列をいれたところです.入力した文字列が文章中で発見されれば,最初に発見されたその文字列のところの色が変わります. さらに続けてその文字列を探したければ,「次を検索」のボタンを押すことで,次にその文字列が出現するところに文字列の選択が移動します.
8_2_2_5_b

caution「次を検索」や「次を置換」は,(デフォルトで「最後まで検索したら最初から」がオフなので)カーソル以降しか検索しないことに注意してください.つまり,カーソルが最後尾にあるときは,単語が橙でハイライトされません.

置換

文章に出てくる A という文字列を B という文字列に置換したいとします.
置換をするには,まず検索の場合と同様にして検索/置換ダイアログを出します.そして置き換えたい文字列 A を検索文字列に入力し,「次を検索」ボタンを押して,置き換えたい文字列が最初に出てくる場所を探します.最初に出てくる場所が見つかると,カーソルがその位置に移動します.
その後文字列 B を「置換文字列」の下のテキストボックスに入力して「次を置換」を押すと,文字列 A が文字列 B に置換されます.「次を置換」を繰り返すと,文字列 A を次々に文字列 B に置換することができます.図は,「はいぱーワークブック」という文字列をHWBという文字列に置き換えているところです.
8_2_2_5_c
8_2_2_5_d
また置換範囲を「全て」にすれば,一括で全ての文字列 A を文字列 B に置換することができます.ただし一括での置換は予期せぬ置換を引き起こす可能性があります.たとえば形容詞「どんより」を検索したら「僕はうどんよりそばが好きだ」という部分に引っかかる,等です.一括置換をする際は,本当に望んだ文字列だけが置換されるかどうかを慎重に確かめましょう.

正規表現を用いた検索

mi では,hwb26. テキストデータ処理 で説明する正規表現を用いた検索にも対応しています.検索 / 置換ダイアログの一番下にある検索オプションの中の「正規表現検索」にチェックを入れるだけで,普通の検索と同様に正規表現による検索 / 置換が可能になります.正規表現を覚えるとテキストエディタの使い勝手が段違いに良くなりますので,ぜひ勉強してみてください.