【发布时间】:2011-09-20 01:26:33
【问题描述】:
让我们明确一点,我说的是词法分析工具。
对于以下输入:
aa bb cc dd
我需要解析器来匹配以下子字符串:
aa bb
bb cc
cc dd
我有这个正则表达式:
[a-zA-Z]+[ ]+[a-zA-Z]+
但这只匹配:
aa bb
cc dd
有人告诉我 REJECT 命令可用于获取我需要的输出,但我不知道如何应用它。有人可以帮帮我吗?
【问题讨论】:
-
不,
REJECT在这种情况下不会帮助您。当匹配[a-zA-Z]+[ ]+[a-zA-Z]+时,您会希望让词法分析器中字符的当前位置跳回2 个位置,而REJECT将跳回规则的开头并尝试匹配更多。不过,我对 Flex 不够熟悉,无法回答您的问题。
标签: parsing lex flex-lexer