Flexにおけるルールには2つの部分があります。 パターン・マッチング用の表現式とアクション部です。 この2つは、 以下のように配置されます。
pattern actions
Flexがマッチするパターンは、
正規表現を使って作られます。
そしてその正規表現は、
文字、文字列、定義、スタート状態、および演算子から作られます。
下の表は、
種々の正当な正規表現を示します。
表中において、
`c'は(エスケープ・シーケンスを含む)任意の単一文字を、
`r'は任意の正規表現を、
`s'は文字列を、
それぞれ表します。
表はグループ別に編成されていて、
優先度の最も高いものが一番上にあります。
これは、
sed
、grep
、Emacsや正規表現を使う他の一般的なプログラムにおいて使われる正規表現と完全に同一ではないことに注意してください。
ルールのアクション部は、
任意の正当なCコードです。
単一行に複数の文を書くことも可能ですし、
括弧の対{...}
で囲むことで、
複数の文のブロックを複数行にわたって書くことも可能です。