0
如何捕捉詞法分析器中的異常?在解析器如果規則失敗(或不匹配與給定的輸入流)ANTLR的會拋出異常,我們可以輕易地捕獲這個exception.Catch在Antlr3.Ref詞法分析器異常:Error handeling in antlr 3.0 ...在詞法分析器中捕捉異常Antlr3
attribute :
Value1 integer1["Value1"] { System.out.println("Accepted"); }
| Value2 integer2["Value2"] { System.out.println("Accepted"); }
;
catch[Exception e] {System.out.println("General error Reported");}
它將parser.But工作,我如何能趕上在詞法分析器本身?.Say在我有喜歡
str:STRING|DIGIT;
和詞法STRING的規則解析器異常被定義爲
STRING : ('"' 'a'..'z' '"');
我的輸入流是「上帝」....如果我想念雙引號或者如果我把額外的雙引號,那麼我希望這個異常應該在詞法分析器本身...有沒有什麼方法可以做到這一點?可能嗎?