2012-05-10 4 views
1

私がキーワードの定義(大文字小文字を区別しない)を持っていると仮定します。今、私はすべてのキーワードから構成さKEYWORD定義したいFlexの別の定義で以前のregex定義を使用するには?

CLASS (c|C)(l|L)(a|A)(s|S){2} 
IF  (i|I)(f|F) 
...more.... 

:この方法をやって、しかし

KEYWORD (CLASS|IF| ....more....) 
IDENTIFIER  [^KEYWORD][a-zA-Z0-9] 

を、それだけ扱いますCLASSは文字列として扱われ、前の定義には置き換えられません。さらに、KEYWORDの定義をIDENTIFIERに使用したいのですが、それは有効ですか(KEYWORDが代用されるとします)?

+1

Adob​​e Flexタグを削除してGnu-Flexと置き換えました。私はそれがこの質問にもっと適切だと思うからです。 – JeffryHouser

答えて

2

[OK]を私はここに以前の定義を使用する方法を発見:http://dinosaur.compilertools.net/flex/flex_6.html#SEC6

我々は以前の定義の周り} {追加する必要があります。私は他の人からの今後の参考のために自分自身を答える

KEYWORD ({CLASS}|{IF}| ....more....) 
IDENTIFIER  [^{KEYWORD}][a-zA-Z0-9] 

+0

あなた自身の答えも受け入れることができます。それでもバッジができます! –