如何在词汇流氓结构中包含正则表达式?
How to include regexp in lexical rascal structure?
我正在尝试通过识别像 1_111_111.
这样的大数字来改进 java18 词汇结构
我试过了:
lexical DeciNumeral =
"0"
| \b([1-9](\d{0,2}))(_\d{3,3})*\b;
感谢@davy 和@jurgenv。我设法用这段代码解决了我的问题
lexical DeciNumeral =
"0"
| [1-9]
| [1-9] [0-9 _]* [0-9];
Lexicals are not regular expressions。它们只是没有交错布局的普通非终端。
非终结符中有支持正则表达式子集的产生式。在这里阅读更多相关信息:Symbol.
您的代码示例可以是:
lexical DeciNumeral = {[0-9]+ !>> [0-9] "_"}+;
这是一组或多组ps的数字,可以用下划线分隔。
ps:很高兴您扩展了 Java 1.5 语法,如果可能,请分享您的结果!
我正在尝试通过识别像 1_111_111.
这样的大数字来改进 java18 词汇结构我试过了:
lexical DeciNumeral =
"0"
| \b([1-9](\d{0,2}))(_\d{3,3})*\b;
感谢@davy 和@jurgenv。我设法用这段代码解决了我的问题
lexical DeciNumeral =
"0"
| [1-9]
| [1-9] [0-9 _]* [0-9];
Lexicals are not regular expressions。它们只是没有交错布局的普通非终端。 非终结符中有支持正则表达式子集的产生式。在这里阅读更多相关信息:Symbol.
您的代码示例可以是:
lexical DeciNumeral = {[0-9]+ !>> [0-9] "_"}+;
这是一组或多组ps的数字,可以用下划线分隔。
ps:很高兴您扩展了 Java 1.5 语法,如果可能,请分享您的结果!