次: , 前: Table Compression and Scanner Speed, 上: Other Flex Features


5.4 翻訳テーブル

翻訳テーブルは、 文字をグループにマップするのに使われます。 このテーブルはLexの持つ機能の1つですが、 POSIXでは定義されていません。 Flexでも翻訳テーブルを使うことはできますが、 サポート対象外の機能です。 Flexにおいては翻訳テーブルは不要です。 というのは、 Flexには`-i'オプションによる同等クラスというものがあり、 これが翻訳テーブルと同等の機能を実現しているからです (see `-i'オプション)。 翻訳テーブルの機能は、 互換性のためだけに存在する余分な機能です。 翻訳テーブルを使うことはお勧めできません。 翻訳テーブルを使いたいのであれば、 定義ファイルの先頭の定義セクションにおいて定義しなければなりません。

翻訳テーブルの一般的な形式は以下のとおりです。

     %t
     1 ABCDEFGHIJKLMNOPQRSTUVWXYZ
     2 0123456789
     %t
     %%

これは、 `A'から`Z'までの任意の文字がルールの中で使われている場合、 そのパターンは`A'から`Z'までのどの文字にもマッチするということを意味しています。 したがって、 `A(BC)'と`X(YZ)'はまったく同一であるということになります。