我需要在正则表达式中转义一个空格吗?我知道它在 Python 中可以通过以下任一方式工作re.compile(r'\s')
:re.compile(r' ')
和re.compile(r'\ ')
. 因此,您似乎可以使用 Python re 模块逃避它或不逃避它。
但是当我试图通过 ply.lex 为单个空格定义规则时,事情似乎有点不同。
########################## # r'\s' 适用于 ply.lex def t_WHITESPACE(令牌): r'\s' 经过 ########################## # r'\' 也可以 def t_WHITESPACE(令牌): r'\' 经过 ########################## # r' ' 不起作用 # 引发 SyntaxError 并显示消息“规则 't_WHITESPACE' 的正则表达式匹配空字符串” def t_WHITESPACE(令牌): r'' 经过
ply.lex 是否对规则的文档字符串进行任何特殊处理?