我想匹配非空格字符,所以我用JFlex定义了flex文件:
%%
Value = [\S]+
%%
{Value} { return MyTokens.Value; }
. { return MyTokens.BadCharacter; }
然后我尝试生成的java代码来分析字符串" abc",但我得到:
BadCharacter(a)
BadCharacter(b)
BadCharacter(c)
如果我将声明更改为:
Value = [a-z]+
然后我可以得到预期的结果:
Value(abc)
为什么\S
无效?是不是意味着"非空白"?
答案 0 :(得分:1)