Emacs_Regex の変更点 - アールメカブ

アールメカブ


Emacs_Regex の変更点


[[Linuxの備忘録]]

通常検索は C-s だが,検索バッファに日本語がインライン入力できないことがある.とりあえず C-s RET でしのぐ

 \C-u \C-s 

置換の場合はM-x replace-regexp.


Emacs では C-q C-* で * のところに文字コード表での制御文字 (^i) を指定する.例えば , を タブに変えるなら

 M-%


で

 , with C-i


例えば キャリッジリターン ^M を改行にかえるならば
 ESC % , c-q c-m Enter, c-q c-j 
となる。

[[ここ:http://homepage2.nifty.com/copper29/ipr/emacs.html]]から引用

正規表現による置換

M-x replace-regexp は指定したパターンに一致する任意のものを置換(無条件置換)

M-x query-replace-regexp RET regexp(検索条件) RET newstring(置換パターン) RET、
または
C-M-% regexp RET newstring RET
は指定したパターンに一致する任意のものを置換(問い合わせ型置換)
C-M-sで前方正規表現検索、C-M-rで後方正規表現検索。

例:3桁の数字+":"の後に改行を挿入する。
C-M-% [0-9][0-9][0-9]: RET \& C-q j RET
(C-q jで改行コードを挿入) 

私の環境では,改行は  C-q C-j となる.

* 行末の最後が数値ならば,コンマを加える [#s55fff7f]

 M-x query-replace-regexp \([0-9]\)_Ctrl-q_Ctrl-j_RET_\1_Ctrl-q_Ctrl-j
 M-x query-replace-regexp \([0-9]\)_Ctrl-q_Ctrl-j_RET_\1,_Ctrl-q_Ctrl-j