gpt4 book ai didi

python - 解析问题

转载 作者:太空宇宙 更新时间:2023-11-04 07:48:01 25 4
gpt4 key购买 nike

此代码有效:

from pyparsing import *

zipRE = "\d{5}(?:[-\s]\d{4})?"
fooRE = "^\!\s+.*"

zipcode = Regex( zipRE )
foo = Regex( fooRE )

query = ( zipcode | foo )



tests = [ "80517", "C6H5OH", "90001-3234", "! sfs" ]

for t in tests:
try:
results = query.parseString( t )
print t,"->", results
except ParseException, pe:
print pe

我遇到了两个问题:

1 - 如何使用自定义函数解析 token 。例如,如果我想使用一些自定义逻辑而不是正则表达式来确定数字是否为邮政编码。而不是:

zipcode = Regex( zipRE )

也许:

zipcode = MyFunc()

2 - 如何确定字符串解析的内容。 “80001”解析为“zipcode”,但如何使用 pyparsing 确定它?我不是在解析字符串的内容,而是简单地确定它是哪种查询。

最佳答案

您可以分别使用 zipcode 和 foo,这样您就知道字符串匹配哪一个。

zipresults = zipcode.parseString( t )
fooresults = foo.parseString( t )

关于python - 解析问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2212860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com