我尝试用以下方法解析十六进制数: hex_number:" 0x" HEXDIGIT +和0xA作为输入,它总是抛出一个错误,A是意外的令牌。
答案 0 :(得分:1)
这是一个不会引发任何错误的小例子:
from lark import Lark
if __name__ == "__main__":
grammar = """
start: hex_number
hex_number : "0x" HEXDIGIT+
%import common.HEXDIGIT
%import common.WS
%ignore WS
"""
parser = Lark(grammar, start='start')
tree = parser.parse(" 0xA ")