regex - lex 的正则表达式词边界替代
问题描述
我现在正在使用 (f)lex 扫描仪,当我想使用正则表达式处理数字时,如下所示:
(\B[+-]?[0-9]+)|([0-9]+)
和比赛要求(我想要的结果)如图所示:
我们可以看到绿色和红色是匹配案例(对于第一个和第二个条件)。这个“实验”在https://regex101.com/完成。
但是,当我尝试在 lex 中应用上述正则表达式时,它不起作用。
我已经对原因和替代方案进行了一些研究,但它们不符合我的需求:
- 这个答案解释了为什么上面的正则表达式不起作用
- 这个答案为类似情况提供了一个替代方案,这可能会给你一些想法。
我希望有人能给我一些想法。谢谢!
解决方案
推荐阅读
- javascript - Webpacker can't find stylesheets/application.css
- python - Python Pandas MD5 Value not in index
- python - No such file or directory while using os.rename
- excel - excel 文件 (.xlms) 继续加载但未打开。但是,在加载它时,它会打开,如果单击另一个 excel 文件以打开它
- java - Deserializing a list of JSON objects having object's ID as an object name
- swift - Bind uitextfield value to viewModel using mvvm
- c++ - C++17 copy constructor, deep copy on std::unordered_map
- amazon-web-services - 无法在新的 AWS EMR 集群中获取 SparkContext
- python - How do I add an element to numpy nd array?
- javascript - How to throw error in node js and catch it mocha