antlr3

    0熱度

    1回答

    以下是我的antlr 3語法。我想剝離html標籤內的內容。 當標籤內部有算術運算符< >時,就會出現問題。 這怎麼處理? grammar T; options { output=AST; } tokens { ROOT; } parse : text+ ; text : (tag)=> tag ! | SPACE ! | o

    0熱度

    1回答

    令人驚訝的是,我正在爲項目構建一個像SQL語言解析器。 我大部分都在工作,但是當我開始根據真正的請求對它進行測試時,我會意識到它在內部的行爲與我想象的不同。 的主要問題在下面的語法是我定義了一個詞法規則PCT_WITHIN的語言關鍵字「pct_within」。這工作得很好,但如果我嘗試匹配諸如「attributes.pct_vac」領域,我得到具有「attributes.ac」和一個漂亮的ANTL

    1熱度

    3回答

    我正在使用ANTLR 3 我試圖自定義從Praser引發的異常消息。 表達我現在用: - 2+*3 錯誤消息從ANTLR recived是: no viable alternative at input '*' line 1:3 我想自定義此異常消息 Invalid Expression Term line 1:3 我試着覆蓋分析器的方法GetErrorMessage(Recognit

    0熱度

    1回答

    我有一個以下語法,我想避免「在AST中顯示爲一個節點,要做到這一點,我是!後綴,但ANTLWorks仍然在樹上顯示出來,我做錯了什麼? grammar BooleanExpr; options { output=AST; ASTLabelType=CommonTree; } booleanExpr : andExpr ('OR'^ andExpr)*; andEx

    0熱度

    1回答

    我正在使用ANTLRWorks來測試我想出的一種語法,其中一個規則預見了BULLET符號的用法,但是當解析樹正在構建時,它每次都會轉義它。我也嘗試了擴展ASCII表中的其他字符,並且它們也被省略。它是一個知道的錯誤,或者我應該以某種方式啓用擴展的ASCII字符?

    0熱度

    1回答

    我有以下語法。它應該識別由單引號字符(')分隔的字符串。但是,這不符合預期。在ANTLWorks,控制檯窗口顯示以下警告: [10時46分50秒]的錯誤(139):Test.g:9:15: 補集是空 爲什麼那我怎樣才能匹配一個字符串,可以包含任何字符,但分隔符? grammar Test; options { language=CSharp3; output=AST;

    0熱度

    1回答

    ,當我在我的語法運行輸入 integer function() : 2+2+2; integer x; 3-1-2; end. : evaluator : type 'function' '(' ')' ':' (expression ';' | declaration ';')* 'end' '.' EOF ; decla

    0熱度

    1回答

    我通過工作ANTLR使用Java語法來生成Java代碼AST和我使用的命令行編譯文件,我得到了這些問題: 當我用antlrworks與此Java.g -1-1.4.3.jar,並用javac編譯文件時,我得到了1個錯誤,這是 JavaParser.java:24631: illegal start of expression void =null; ^1 error 我

    2熱度

    1回答

    我的build.xml文件看起來像以下: <property name="lib" value="${basedir}/lib" /> <property name="src" value="${basedir}/src" /> <property name="package" value="com/package/antlr" /> <path id="compile.classpath

    0熱度

    1回答

    我正在使用ANTLRv3。我定義了一個語法。 現在我想要顯示分析樹(就像在ANTLRWorks分析樹或堆棧中一樣)。 我試過http://www.antlr.org/wiki/display/ANTLR3/Interfacing+AST+with+Java(步行通過孩子),但它忽略語法中的子句,在解析字符串中沒有出現 。 例如,我有一個SQL語法。 我正在解析SELECT標題,來自文檔的描述。 在