![]() |
1
8
Pyparsing没有对这些令牌进行分组,因为您没有告诉它。Pyparsing的默认行为是将所有匹配的令牌串在一个列表中。要获得令牌的分组,请将要分组到pyparsing中的表达式包装在解析器中
到
另外,我建议您不要像在中所做的那样实现自己的逗号分隔列表
在做了这两个更改之后,解析结果现在看起来更像您所要求的:
我猜你可能还想
如果这是一个将以某种方式计算的表达式(如扑克),那么请查看pyparsing wiki上的这些示例,这些示例使用类作为解析操作来构造可以按秩或布尔值或其他值计算的对象。 http://pyparsing.wikispaces.com/file/view/invRegex.py http://pyparsing.wikispaces.com/file/view/simpleBool.py http://pyparsing.wikispaces.com/file/view/eval_arith.py
如果为这些表达式构造对象,则不需要使用
|