Java 在lex文件中表示字符串模式

Java 在lex文件中表示字符串模式,java,lex,Java,Lex,如何在lex文件中表示字符串 我尝试了以下方法: {NUM}* {ID}* { return new Symbol(sym.STR);} 但收到的错误为: Description: + ? or * must follow an expression or subexpression. 还尝试: { {NUM}* | {ID}* }+ { return new Symbol(sym.STR);} 错误是:Description:宏不存在。 但宏已被定义为: enter code here

如何在lex文件中表示字符串

我尝试了以下方法:

{NUM}* {ID}* { return new Symbol(sym.STR);}
但收到的错误为:

Description: + ? or * must follow an expression or subexpression.
还尝试:

{ {NUM}* | {ID}* }+ { return new Symbol(sym.STR);}
错误是:Description:宏不存在。 但宏已被定义为:

enter code here
%%
%cup
%line
NUM = [0-9]
ID = [a-zA-Z]
WhiteSpace = [ \t\r\n\f]
%%

定义部分不使用=。请尝试NUM[0-9]。这可能不是错误,因为规则{NUM}+{return new Symbolsym.NUMBER,new integeryText;}在编译或执行时没有错误。重复的