regex - 使用 ANTLR 编写描述以下 Pascal 标记的正则表达式
问题描述
我如何使用 antlr 编写如下所示的正则表达式?谢谢你。
1.一个数要被视为“实数”(或“浮点数”),它必须有小数点或使用科学计数法。例如,1.0、1e-12、1.0e-12、0.000000001 都是有效的实数。小数点的两边必须至少有一个数字。
2.字符串由单引号之间的一系列字符组成:'string'。单引号本身可以作为两个单引号在一个字符串中背靠背出现:'isn”t'。
解决方案
到目前为止,我已经测试了 GRAMMAR ANTLR v4 of Real Number as
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;
新的更新,祝你好运
推荐阅读
- python - 从矩阵中的单个点获取所有方向的数组
- oracle - Oracle EBS - 如何获取 Oracle API 使用的所有表以便对 xxcus 模式进行授权
- javascript - Visual Studio Code does not autocomplete javascript methods like padStart()
- sql - 查询 SQL 以通过 MSSQL 获取所有列和最小最大日期时间
- javascript - Cache api - add XMLHttpRequest object
- angular - 如何在时刻 js 中格式化日期
- php - If radio button not checked, display all rows from column - formulating sql query
- javascript - 在运行时在 javascript 中更新 Map 的键
- laravel - Is there a way to represent date hole in chartjs time series?
- logging - librdkafka.redist 的日志是什么意思