javacc语法冲突令牌

时间:2016-03-14 06:26:22

标签: regex grammar javacc

我正在解析程序的命令行参数
例如:--param1 value1 --param2 value2

当值是以短划线( - )ex:--param1 -value1开头的字符串时,它是一个词法错误。
我应该如何修改语法以接受上述输入?

<STRING : (["A"-"Z" , "a"-"z" , "0"-"9"])+ >
<PARAMNAME : "--"(<STRING>) >

1 个答案:

答案 0 :(得分:1)

你可以这个

<VALUE: ("-")? <NAME> >
<PARAMNAME : "--" <NAME> >
<#NAME : (["A"-"Z" , "a"-"z" , "0"-"9"])+ >