如何识别Lex文件中的字符串

时间:2013-05-04 11:25:55

标签: lex

你能用什么来识别lex中的字符串。

我已经尝试了

enter code here

import java_cup.runtime.*;

%%
%cup
%line
NUM = [0-9]
ID = [a-zA-Z]
Pun= [:=;#@$^~]
WhiteSpace = [ \t\r\n\f]
SDQuo = [\"]
%%


({SDQuo}+) ({ID}|{NUM})* ({SDQuo}+) { return new Symbol(sym.STR, new String(yytext()));}

但宏无法识别。 我一直得到的错误信息是: 处理第一部分 - 用户代码。 处理第二部分 - JLex声明。 处理第三部分 - 词汇规则。 创建NFA机器表示。 错误:第39行解析错误。 描述:词法动作开始时缺少括号。 解析错误。

1 个答案:

答案 0 :(得分:1)

忽略=等定义中的NUM符号,不要将它们放在%%之间。而是将最后一条规则放在%%

之间