限制令牌的长度
Limit the length of a token
如何在flex中指定一个token的长度上限?
例如具有由数字和字母组成的标识符,长度最多为 1024 个字符。
你可以用
[a-zA-Z0-9]{1,1024}
按照你说的。不过更有可能是
[a-zA-Z][a-zA-Z0-9]{1,1023}
因为您通常需要以字母开头的标识符。
但您可能会发现在操作中简单地执行规则会更好。否则,扫描器将简单地将一个 2048 字符的标识符切成两半,return 两半作为标记,这并不是您真正想要的。
顺便说一句,1024 高得离谱。
如何在flex中指定一个token的长度上限?
例如具有由数字和字母组成的标识符,长度最多为 1024 个字符。
你可以用
[a-zA-Z0-9]{1,1024}
按照你说的。不过更有可能是
[a-zA-Z][a-zA-Z0-9]{1,1023}
因为您通常需要以字母开头的标识符。
但您可能会发现在操作中简单地执行规则会更好。否则,扫描器将简单地将一个 2048 字符的标识符切成两半,return 两半作为标记,这并不是您真正想要的。
顺便说一句,1024 高得离谱。