1
나는이
Abc \(Def\) Gh (Ij; Kl); Mno (Pqr)
같은 문자 스트림 JavaCC 파서를 쓰는 사람이
- ABC 방송 \ (데프 \)처럼 그것을 tokenized를 얻어야한다
Gh를 탈출
- LPAREN
- ij
- SEMICOLON
- Kl기를
- RPAREN
- SEMICOLON
- MNO
- LPAREN
- PQR
- RPAREN
현재 토큰 정의
TOKEN:
{
< WORDCHAR : (~[";", "(", ")"])+ >
| <LPAREN: "(">
| <RPAREN: ")">
| <SEMICOLON: ";">
}
이다,
백 슬래시가없는 괄호는 포함하지 않고 백 슬래시를 포함하도록 WORDCHAR 토큰을 어떻게 변경해야합니까?
'| "\\ ("| "\\)"'WORDCHAR 토큰 정의가 트릭을 수행했습니다. – haba713
원본 포스터의 질문에는 아무런 문제가 없습니다. 그리고이 대답에는 아무런 문제가 없습니다. 문제는 "백 슬래시가 이스케이프 처리 된 괄호를 포함하도록 WORDCHAR 토큰을 변경해야하지만 백 슬래시가없는 괄호는 어떻게 변경해야합니까?" 이 답은 그 질문에 정확하게 대답합니다. OP가 왜 코드가 작동하지 않는지 묻는다면 다른 문제가 될 것입니다. 원본이 작동하지 않는 이유는 분명합니다. 백 슬래시는 언급하지 않았습니다. 왜 응답 코드가 작동하는지 알아 내려면 누구나 문서를 읽을 수 있습니다. –