ANTLR을 사용하여 입력을 구문 분석하는 데 매우 특별한 요구 사항이 있습니다. 나는 다음과 같은 표현을 파싱 할 수 있기를 바란다.Antlr 사용자 정의 요구 사항 분석기
올바른 입력
- 사용자 이름
- _ 이름 사용자 이름
- | 어떤 것도 여기에 올 수 있어요/OK | EATALL ...
잘못된 입력
- 사용자/이름
- 사용자 & 이름^얼굴
음, 올 어떤 표현 | EATALL
& | EATALL
전 (있는 경우 후 any)는 단일 토큰으로 얻어야합니다. | EATALL
이 표시되지 않는 다른 간단한 입력의 경우 _
, -
, [a-zA-Z0-9]
의 유효한 조합 만 하나의 토큰으로 토큰 화됩니다. 의사에서,
- 사용자 이름 -> [사용자] [이름]
- _ 이름 -> [USER_NAME]
- | EATALL 사용자/내 사용자 이름 -> [사용자/이름을 내 사용자]
이것은 이미 나를위한 토큰 화의 모호한 사례처럼 보입니다. 나는 antlr에서 이러한 문제를 다루는 것에 대한 귀하의 제안을 모색 중입니다. 진심으로 감사드립니다.
처음에는 문제가 정규식에 의해 처리 될 수 있고 문맥없는 문법을 필요로하지 않는 것처럼 보입니다. Antlr이 필요하지 않습니다. –
이것은 입력 구문 분석 문제의 일부일뿐입니다. 나는 특별히 antlr에 관해 도움을 청하고있다. – consumer