我正在尝试学习使用 JavaCC,并意识到它支持正则表达式。叫我懒惰,但我认为定义数字的默认/常用方法有点太长了:
TOKEN : { < #DIGITS : (["0" - "9"])+ >}
我尝试使用速记字符类,例如:
TOKEN : { < #DIGITS : (\d)+ >}
但“编译器编译器”似乎不喜欢它。我得到速记字符的词汇错误。我找不到关于此事的任何文档,所以我不确定我是否做错了什么或者它根本不受支持。如果有人可以确认/否认我的假设,即 javacc 不能很好地使用速记字符类,我将不胜感激。