我想为antlr4编写lexer规则,以检查少数USER ID。我需要检查字符串的开头是否不包含任何点,它们可能在中间有点,但点不能连续出现。有人能帮我出个主意吗?
如果点也不能出现在末尾,那么您可以使用类似的东西(VALID
:的定义可能不同
VALID: [A-Za-z0-9]
USERID: VALID ('.'? VALID)*
如果你想在末尾添加一个点,你可以添加:
USERID: VALID ('.'? VALID)* '.'?