2014. 2. 21. 06:44

ANTLR 문법 파일 파싱 3

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

안녕하세요.

간단한 문법 한,두줄 파싱 처리 하는데 몇일 걸리네요.

파싱은 쉬운데 소스를 생성 시킬려니 참 많은 시간이 걸리는 것 같습니다.

  • Recursive 함수를 사용해야 합니다.
  • 파싱을 수행할 실행 소스 생성시 Template을 토대로 소스를 만듭니다.
  • While 문과 함꼐 이용 해서 break, return, throw를 사용하면 됩니다.

우선 쉬운 대상으로 처리 해봤습니다.

CSV 입니다.

https://github.com/antlr/grammars-v4/blob/master/csv/CSV.g4

링크 주소 입니다.

V3 와 V4와 약간 다른 것 같기에 제 버전으로 수정 처리 했습니다.

위에 선택된 문법을 토대로 소스를 생성 시킵니다.

 

문법 파일입니다.

함수 실행 전입니다.

결과값 디버깅 모드 입니다.

 

실행 후 집어 넣은 값 입니다.

 

If/else 줄 맞춤은 #region 으로 묶어서 처리 하면 될꺼 같습니다.

두번째 문법 입니다.

생성이 잘 되었습니다.

현재 이러한 모양으로 소스가 생성이 됩니다.

차츰 문법을 늘려 나가면서 코드가 어떻게 바뀌나 비교 해봐도 될듯하네요.

 

'습작 및 R&D' 카테고리의 다른 글

웹페이지 파싱 툴 - 1  (0) 2014.02.26
Torrentproject downloader  (0) 2014.02.22
ANTLR-문법-파일-파싱-2  (0) 2014.02.19
ANTLR 문법 파일 파싱-1  (0) 2014.02.18
소스의 총 라인 분석 툴  (0) 2014.02.16