2011-07-15 15 views
-1

小文字の単語に一致するように正規表現を作成したいが、 'return'と 'while'は除外する。私はこのような解決したくない:小文字の単語に一致するが、特定の単語を除外するFlex(The Fast Lexical Analyzer)

return {/*nothing*/} 
while {/*nothing*/} 
[a-z]+ {/*some code*/} 
+0

と一致しますこのドキュメントはあなたのFLEXのバージョンをサポートしていますか? http://flex.sourceforge.net/manual/Patterns.html#Patterns –

+0

いいえ、私のバージョンはフレックス2.5.35 – xudifsd

+1

私は上記のコメントの文書を見て、それ以外の方法を見つけることができませんでした。記載されている。なぜあなたの方法は受け入れられないのですか? –

答えて

0

私はあなたが何をしたいの100%明確でないんだけど、これは役に立つかもしれません:

\b(?!(?:return|while)\b)[a-z]+ 

それは

\b      # A word break. 
(?!(?:return|while)\b) # This is a negative look around 
         # saying don't match if a return 
         # or while is matched followed by 
         # a word break. 
[a-z]+     # Match 1 or more lowercase letters. 
+0

ここに私がFLEXのために見つけた文書があります。単語境界 '\ b'や否定的な先読み'(?!regex) 'は言及していません。 http://flex.sourceforge.net/manual/Patterns.html#Patterns –

+0

ええ、あなたの答えが正規表現システムではうまくいくかもしれませんが、フレックスは "!"をサポートしていない可能性があります。と "\ b" – xudifsd

関連する問題