next up previous contents
Next: ファイルへの書き込み、ファイルからの読み出し Up: emacsを使う Previous: 文字列の消去と変更

文字列の検索と置換

文字列の検索は

        下方向に検索    C-s ESC 文字列 RET      (search-forard)
        上方向に検索    C-r ESC 文字列 RET      (search-backward)

この二つが通常のエディタで使われる検索命令に当たります。emacsの場合よ く使われるのは増分検索(incremental search)という方法です。

        順方向増分検索  C-s     (isearch-forward)
        逆方向増分検索  C-r     (isearch-backward)

まずC-sと入力すると増分検索に入ります。探したい文字を一文字入力します。 すると最初に見つかったその文字のところへ進みます。探したい文字の2文字 目を入力します。するとその2文字の組み合わせの最初のもののところへ進み ます。まだ目的の所へたどり着いていないときはさらに3文字目を入力してや ります。このようにして1文字づつ順に入力して行く過程でemacsは候補地を探 してゆくので、少ないタイピングで検索が出来るというわけです。目的地にた どり着いてそれ以上探す必要のないときはESCキーを押してやります。

正規表現による検索も可能です。C-M-sです(isearch-forward-regexp)。逆方 向への検索もできますが(isearch-backward-regexp)、キーには割り当てられ ていません。使える正規表現はviとほぼ同じです。3.1.1.6.を参照してくださ い。

現在のカーソルから先にある一致する文字列を全て置き換えるには、 replace-stringやreplace-regexpコマンドを使います。キーには割り当てられ ていませんから次のように使います。

        M-x replace-stringRET旧文字列RET新文字列RET

「旧文字列」が全て「新文字列」に置き換えられます。一つ一つ確認しながら 置き換えていきたいときは

        M-%旧文字列RET新文字列RET

とやります。query-replaceです。正規表現で検索する場合は query-replace-regexpコマンドを使います。



next up previous contents
Next: ファイルへの書き込み、ファイルからの読み出し Up: emacsを使う Previous: 文字列の消去と変更



Kinya Hibino
Wed Apr 26 21:42:06 JST 1995