lex

问题描述

我现在正在使用(f)lex扫描仪,当我想使用正则表达式按如下方式处理数字时:

(\B[+-]?[0-9]+)|([0-9]+)

和匹配要求(我想要的结果)如下图所示:

the result I want

我们可以看到绿色和红色是匹配的情况(对于第一个和第二个条件)。此“实验”是在https://regex101.com/进行的。

但是,当我尝试在lex中应用上述正则表达式时,它不起作用。

我已经对原因和替代方法进行了一些研究,但它们不符合我的需求:

  1. The answer of this explanined why the regex above not working
  2. This answer provide an alternative for similar cases,这可能会给您一些想法。

我希望有人能给我一些想法。 谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)