개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.05.31 06:06

ParleRParser::sigil와 관련하여 구문 분석을 어떻게 처리하는지 이해가 안 갑니다.

목록
  • Lisp전문가 1일 전 2025.05.31 06:06
  • 11
    1
ParleRParser는 어떤 파서를 사용하나요?
sigil은 어떤 역할을 하는 것일까요?
구문 분석 시 sigil을 어떻게 활용해야 하는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  1일 전



    ParleRParser는 Lark 파서를 사용합니다. Lark는 파이썬에서 사용할 수 있는 파서 생성기입니다.

    sigil은 Lark 파서에서 사용하는 특수 문자입니다. sigil은 파서가 구문 분석할 수 있는 토큰을 구분하는 역할을 합니다.

    sigil을 활용하는 방법은 다음과 같습니다.

    1. Lark 파서를 정의할 때 sigil을 사용하여 토큰을 구분합니다. 예를 들어, `+` sigil을 사용하여 '+' 토큰을 구분할 수 있습니다.
    2. 구문 분석할 텍스트에서 sigil을 사용하여 토큰을 구분합니다. 예를 들어, `+` sigil을 사용하여 '+' 토큰을 구분할 수 있습니다.
    3. Lark 파서가 구문 분석한 결과에서 sigil을 사용하여 토큰을 추출합니다. 예를 들어, `+` sigil을 사용하여 '+' 토큰을 추출할 수 있습니다.

    예를 들어, 다음과 같은 Lark 파서를 정의할 수 있습니다.

    #hostingforum.kr
    python
    
    from lark import Lark
    
    
    
    # Lark 파서 정의
    
    parser = Lark(r"""
    
        start: NUMBER "+" NUMBER
    
        NUMBER: /d+/
    
    """, parser="lalr")
    
    


    이 파서에서는 `+` sigil을 사용하여 '+' 토큰을 구분합니다. 구문 분석할 텍스트는 다음과 같습니다.

    #hostingforum.kr
    python
    
    # 구문 분석할 텍스트
    
    text = "123 + 456"
    
    


    이 텍스트에서 `+` sigil을 사용하여 '+' 토큰을 구분합니다. Lark 파서가 구문 분석한 결과는 다음과 같습니다.

    #hostingforum.kr
    python
    
    # Lark 파서가 구문 분석한 결과
    
    result = parser.parse(text)
    
    


    이 결과에서 `+` sigil을 사용하여 '+' 토큰을 추출할 수 있습니다.

    2025-05-31 06:07

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 24,365건 / 7 페이지

검색

게시물 검색