我正在尝试为包含'_'的数字创建解析器。我希望下划线在输出中被抑制。例如,一个有效的字会1000_000它应该会返回一个数字:1000000 我曾尝试excludeChars此关键字参数作为我的理解是,这应该做到以下几点:python pyparsing word excludeChars
“如果提供,该参数指定不被认为匹配的字符,即使这些字符被认为是匹配的。“
从http://infohost.nmt.edu/tcc/help/pubs/pyparsing/pyparsing.pdf摘自 - 第33页部分5.35(大pyparsing BTW参考)
所以,下面是我的尝试:
import pyparsing as pp
num = pp.Word(pp.nums+'_', excludeChars='_')
num.parseString('123_4')
,但我最终的结果是 '123',而不是' 1234'
In [113]: num.parseString('123_4')
Out[113]: (['123'], {})
有什么建议吗?
这是一个很好的建议,特别是基于做作的例子,我给了,但这解析器形成更复杂的解析器的一部分。那么,你的建议可能仍然可以利用。如果我在这里没有得到直接的解决方案,我会将你的答案标记为答案。 –