2016-05-09 10 views
0

のコンテンツのみを取得し、私は私の文法上のこのレクサーのルールをしました:私はこのルールを訪問するときレクサールール - >文字列

STRING_LITERAL 
: '\'' (~'\'' | '\'\'')* '\'' 
; 

、私はこのSTRING_LITERALの「コンテンツ」を取得したいです。つまり、最初は'と最後の'の間のすべてです。

例:

String s = node.getText(); 
s -> "'sample string'" 

それは、文字列の「コンテンツ」を取得するために、レクサールールを少し触れることは可能ですか?

+0

レクサーにあまりにも多くの「インテリジェンス」をかけてはいけません。これは他の場所でも処理できます。 – ibre5041

+0

あなたは何を考えているのですか?より淡い 'STRING_LITERAL'レクサールールを取得するにはどうしたらいいですか? – Jordi

答えて

0

あなたのリスナー/ウォーカー/ whatever-consume-codeのテキストを読み上げるときに単に引用符を取り除くのはなぜですか? ibre5041が正しく、文法にあまりにも多くの処理を置かないでください。セマンティックフェーズはそれにとってはるかに良い場所です。

関連する問題