我認爲ANTLR詞法分析器正在將我在範圍表達式"1...3"
中的嘗試當作浮點數處理。表達"x={1...3}"
是走出詞法分析器作爲"x={.3}"
當我用下面的標記定義:ANTLR lexing越來越困惑'...'並漂浮
FLOAT
: ('0'..'9')+ ('.' '0'..'9'+)? EXPONENT?
| ('.' '0'..'9')+ EXPONENT?
;
AUTO : '...';
當我改變FLOAT只檢查整數,像這樣:
FLOAT : ('0'..'9')+;
則表達式"x={1...3}"
被正確標記。任何人都可以幫我解決這個問題嗎?
謝謝!
是表達式「x = {1..3}」還是「x = {1 ... 3}」。你有兩種寫法。 – 2010-04-20 19:19:32
表達式是「x = {1 ... 3}」,只是一個錯字。 – 2010-04-20 19:51:23