标签: regex antlr4 lex
我想为antlr4写lexer规则来检查一些用户ID。我需要检查字符串在开头是否包含任何点,它们可能在中间有点,但点不能连续出现。任何人都可以帮我一些想法吗?
答案 0 :(得分:1)
如果最后一个点也不能出现,那么你可以使用这样的东西(可能有VALID的不同定义:
VALID
VALID: [A-Za-z0-9] USERID: VALID ('.'? VALID)*
如果你想在最后允许一个点,你可以添加:
USERID: VALID ('.'? VALID)* '.'?