bambooflow Note

re2c

最終更新:

bambooflow

- view
メンバー限定 登録/ログイン

字句解析ツールre2c



はじめに


字句解析ツールの代表といえば、lex、flexだと思いますが、いまいちつかいづらいと感じていました。
ほかにないかと探していたら、re2cというものを見つけました。
re2cを調べるとあまり載っていないので、ここにまとめます。


re2cを選択する理由


re2cは次の特徴があります。
  • 処理が高速である
  • 出力コードはクリーンであり、ランタイムを必要としない
  • ASCIIからEBCDICへのクロスコンパイルやワイド文字(UCS-2)やUTF-32もサポートする
  • 正規表現をgoto文に変換する

re2cは、半分手設計で、半分自動生成という感じ。
出力するコードは、ツール依存はなく、クリーンなものです。
CもしくはC++といった限定はなく、どちらでも適した記述に合わせることができます。
速度面でも優秀のようです。
はじめから手書きで書くよりも効率的。
goto文は、多くの人に嫌われる記述だと思いますが、私はむやみに嫌う必要はないと思っています。適切な場所で効率的にgoto文を使うことはコードの読みやすさを向上させます。

re2cは、固定の正規表現マッチングを行うには、軽量で最適なツールなのではないかと思います。

ダウンロード



おおよそのLinuxでは、yumもしくはapt-getでインストールできるかと。

  • チェック
% yum search re2c
または、
% apt-cache search re2c

  • インストール
# yum install re2c
または、
# apt-get install re2c


記述サンプル




参考リンク

タグ:

re2c
記事メニュー
目安箱バナー