我想使用 PyParsing 来解析基于 BNF 的规则。规则可能如下所示:
A -> 'You can use \xABCD to display hexadecimal numbers'
其中 A 是非终结符。赋值操作数是'->'。最后一项是带引号的字符串。
我以下列方式使用 PyParsing:
Left= Word(alphanums)
Op = oneOf('= := -> ::=')
Right = QuotedString('"') | QuotedString("'")
Rule = Left+ Op+ Right
Rule.parseString("A -> '_\x5555 a'") # Get an error of ValueError: invalid \x escape
那么您能告诉我如何使用 QuotedString regconize \x 转义吗?任何帮助,将不胜感激。