Emacs_Regex - RとLinuxと...

RとLinuxと...


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 

となる。

ここから引用

正規表現による置換

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 となる.

_ 行末の最後が数値ならば,コンマを加える

M-x query-replace-regexp \([0-9]\)_Ctrl-q_Ctrl-j_RET_\1,_Ctrl-q_Ctrl-j
 
Link: Linuxの備忘録(2536d) Emacs(2796d)
Last-modified: 2011-03-08 (火) 13:54:23 (2840d)