antlr 如何用 2 到无穷大之间的重复指定正则表达式

antlr How to specify regular expressions with the repitition between 2 to infinity

如何使用 ANTLR 在 2 到无穷大之间的重复来指定正则表达式

谢谢

您可以使用大多数正则表达式将 0 到无穷大的概念指定为:

   (re)*

1到无穷大通常表示为:

   (re)+

但实际上你可以这样写

   (re)((re)*)

用同样的思路,2到无穷大可以写成:

   (re)((re)+)

任何"N to infinity"可以表示为:

   (re_1)(re_2)...(re_N) ((re)*)

其中有N个(re)后跟re star。