我有这个有效的定义:
IDENTIFIER [a-zA-Z][a-zA-Z0-9]*
我不想继续重复[a-zA-Z]和[0-9],所以我做了两个新的定义
DIGIT [0-9]
VALID [a-zA-Z]
如何重写IDENTIFIER规则以使用DIGIT和VALID定义?
我不知道怎么做“第二场”比赛,我被困在这里:
IDENTIFIER {VALID}[{VALID}{DIGIT}]* // This syntax is incorrect
感谢。
编辑:我正在使用的整个测试程序:http://pastebin.com/f5b64183f。
答案 0 :(得分:3)
看起来你真的想要:
IDENTIFIER {VALID}({VALID} | {DIGIT})*
[{VALID} {DIGIT}]解析为[[A-Za-z] [0-9]],这不是一个合法的构造。
答案 1 :(得分:-1)
我认为这样做但我无法测试。你有样本数据吗?
(?:[A-ZA-Z])+(?:[0-9])+