如何使用antlr编写类似下面的正则表达式?谢谢。
1.要将一个数字视为“实数”(或“浮点数”),它必须有小数点或使用科学记数法。例如,1.0,1e-12,1.0e-12,0.000000001都是有效的实数。小数点的两边必须至少存在一个数字。
2.字符串由单引号之间的一系列字符组成:‘string’。单引号本身可以作为一个字符串中的两个单引号出现:‘in’t‘。
发布于 2020-07-28 10:19:49
到目前为止,我已经测试了实数的语法ANTLR v4为
fragment DIGIT : [0-9] ;
INT : DIGIT+ ;
DOT: '.';
SUBREAL : ('+'|'-')?(INT)+;
REAL1: (SUBREAL ('e')? SUBREAL? ) ;
REAL2: (SUBREAL ('e')? SUBREAL? DOT SUBREAL?);
REAL3: (SUBREAL DOT SUBREAL? ('e')? SUBREAL? );
REAL : REAL1 | REAL2 | REAL3 ;
ID : REAL;
新的更新,祝你好运
https://stackoverflow.com/questions/57949800
复制