java u0100_antlr4 python目标无法识别unicode

我有一个ID终止符ID : ([A-Z_]|'\u0100'..'\uFFFE') ([A-Z_0-9]|'\u0100'..'\uFFFE')*;

以及要解析的.txt示例文件

^{pr2}$

我生成了Java和Python2目标,并分别针对示例文件进行了测试。Java目标可以解析这个文件。但是Python2的目标不能,它抛出token recognition error at: '均'。我用其他有效的输入测试了Python2目标,除了包含unicode字符之外,其他都可以。我错过了什么,还是python目标不支持unicode解析。在

爪哇mkdir -p java

java -jar /usr/local/lib/antlr-4.5.3-complete.jar TDX.g4 -o ./java

cd ./java

javac TDX*.java

java org.antlr.v4.gui.TestRig TDX prog -gui ../samples/1.txt

python目标生成命令java -jar /usr/local/lib/antlr-4.5.3-complete.jar -Dlanguage=Python2 TDX.g4 -o ./tdx_py/antlrgen -visitor

python代码import sys

from antlr4 import *

from tdx_py.antlrgen import TDXLexer, TDXParser

def executefile(file):

input = FileStream(file, encoding='utf-8')

lexer = TDXLexer(input)

stream = CommonTokenStream(lexer)

parser = TDXParser(stream)

tree = parser.prog()

if __name__ == '__main__':

executefile(sys.argv[1])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值