flex(字句解析)正規表現-定義の再利用
-
05-07-2019 - |
質問
この作業定義があります:
IDENTIFIER [a-zA-Z][a-zA-Z0-9]*
[a-zA-Z]と[0-9]を繰り返したくないので、2つの新しい定義を作成しました
DIGIT [0-9]
VALID [a-zA-Z]
IDIGIFIERルールを書き換えて、DIGITおよびVALID定義を使用するにはどうすればよいですか?
" second"の実行方法がわかりません。マッチ、私はここで立ち往生しています:
IDENTIFIER {VALID}[{VALID}{DIGIT}]* // This syntax is incorrect
ありがとう。
編集:使用しているテストプログラム全体: http://pastebin.com/f5b64183f 。
解決
実際に必要なように見えます:
IDENTIFIER {VALID}({VALID} | {DIGIT})*
[{VALID} {DIGIT}]は、[[A-Za-z] [0-9]]に解決されますが、これは正当な構成ではありません。
他のヒント
これでうまくいくと思いますが、テストはできません。サンプルデータはありますか?
(?:[a-zA-Z])+(?:[0-9])+
所属していません StackOverflow