정규 발현 토큰 antlrv3
-
19-09-2019 - |
문제
초기 토큰이 부분적으로 고정되고 부분적으로 일반적인 규칙을 작성할 수 있습니까?
rule: ID '=' NUMBER
;
ID: (A.. Z | a.. Z) +
NUMBER: (0 .. 9) +
그러나 토큰 ID가 var* 형식 인 경우에만 (Var가 고정 됨)
감사
해결책
이거 말하나요?
// Use this instead of ID in all parser rules that take either token
identifier
: VAR_ID | ID
;
VAR_ID
: 'var' ('A'..'Z' | 'a'..'z')*
;
ID
: ('A'..'Z' | 'a'..'z')+
;
어느 쪽이든: 가능하면 아니다 오류 메시지에는 엄격한 Lexer 문법을 사용하십시오. 그들은 느리게 그리고 사용자가 완전히 불가능합니다. 당신은 구문 분석해야합니다 ID
편안한 형태로 나중에 정확하게 올바른 형태인지 확인하십시오.
제휴하지 않습니다 StackOverflow