Emacs の正規表現置き換え (M-x query-replace-regexp)

以前に id:suer さんに見せてもらって気になっていたもの。メモメモ。
閉じタグのない部分のある以下のような HTML を

<p>test string1
<p>test string2
<statement>test string1</statement>
<statement>test string2</statement>

次みたいな XML にお手軽に変換したい!みたいな場合に。だって sed とか使い方よくわからんし。

M-x query-replace-regexp
<p>\(.*\)
<statement>\1</statement>

括弧でくくると置き換える文字列の中で参照することができる(括弧はエスケープしなくちゃいけない)。n番目の括弧に対応する文字列への参照は"バックスラッシュ+n"でできます。