新Emacsの強力な置換機能を使いこなす
後藤大地(オングス)
2007/07/01 00:00
6年ぶりの大きなアップデートとなったEmacs 22.1、CVS先端の開発バージョンを使っているユーザは、なんとなく見過ごしてしまっているかもしれないが、新しい機能には便利なものが多い。ここでは、特に強化された置換機能について取り上げる。使いこなせば強力なので、是非使ってみて欲しい。
6年ぶりの大きなアップデートとなったEmacs 22.1、CVS先端の開発バージョンを使っているユーザは、なんとなく見過ごしてしまっているかもしれないが、新しい機能には便利なものが多い。ここでは、特に強化された置換機能について取り上げる。使いこなせば強力なので、是非使ってみて欲しい。
replace-regexpがプログラマブル置換へとパワーアップ
Emacsではreplace-regexpで正規表現置換ができる。現在主流となっている正規表現のスタイルはPerlに源流をおいたものが多いが、Emacsの正規表現はそれとは異なる。特に\( \)の表記などが独特だ。とはいえ、Emacsを愛しているならば、馴れるしかないだろう。書き方が違うだけで、本質的には同じことだ。
さて、22.1.xではこの正規表現置換で関数の使用がサポートされた。具体的には、正規表現のなかに、任意の処理が実行可能なLispコードを指定できる。
これまで複雑な置換をするとなると、Perlなどのスクリプト言語で置換処理を書くことが多かったと思うが、22.1.xからはEmacs内で完結できる。ここでは便宜上、この関数を「プログラマブルreplace-regexp」と呼びたい。
サンプルでつかむプログラマブルreplace-regexp - 手始めは値の比較
早速試してみよう。最初の例題は、リスト1をリスト2のようにするというものだ。
リスト1 プログラマブルreplace-regexpをためしてみる
1 2
2 2
2 1
リスト2 置換後の文字列
1 < 2
2 = 2
2 > 1
- 0人の推薦記事
- 1人がクリップ
-
ソーシャルブックマーク(-)
- トラックバック(0)
- 今日のトップ記事
- 2日前
- 4日前
- 6日前
- 7日前
- ホワイトペーパー
- 読者投票
いよいよ7月11日に売り出される「iPhone 3G」。今のところの購入予定は?
- 話題のタグ
Windows
Apache
SOA
フレームワーク
開発環境
リファレンス
Mozilla
Leopard
ブラウザ
MySQL
Firefox
Linux
オープンソース
Webデザイン
Ruby
Eclipse
Java
Off Topic
Google
HTML
Safari
iPhone 3G
Database
Mac OS X
XHTML
Solaris
Tips
C/C++
Apple
Internet Explorer
iPhone
Flash
CSS
Ajax
Adobe
PHP
JavaScript
イロハ
仮想化
Firefox 3
小技
ライブラリ
RIA
iPod touch
Python
Opera
Microsoft
server
Webアプリケーション開発
入門
話題のタグを見る »
MS、Vistaとの互換性をチェックできる「Compatibility Center」リリースへ
「似非」SOAを見破る10の方法
Firefox 3のアドオンやテーマ管理を容易にする
openSUSE 11.0を試してみた
フォトレポート:世界各国の優秀な技術者がパリに集結--Imagine Cup 2008世界大会
バッチ処理でデータベース活用:4つの課題と5つの解決ポイント
Rubyでどう書く?:RubyでWord文書を作成する
「未来の、その先」をどう提言していくか
DELL連載第4回〜「Microsoft System Center」
ZDNet Japan Green IT
今知るべき仮想化情報
Techno Exchange