Python中文
首页
教程
问答
标签
搜索
登录
注册
如何在Python中解析JSONXML混合文件
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>Python想用一个不确定的语法解析一个不确定的文件,但是</p> <pre><code><XProtocol> { <str1."fds"> "str2" <str3> 123.0 <str4> { 1 2 3 4 5 6 6 "str" "str" 43 "str" 4543 } <weird1."str5"> { <weird2."str6"> { "str" } <also."weird3"> 1 <againweird> { 1 "fds" } { } <even> <more."weird4"> { } { } { } { "a" } } } </code></pre> <p>设计输出如下:</p> ^{pr2}$ <p>我尝试使用以下代码失败:</p> <pre><code>import pyparsing as pp def parse_x_prot(text): lbra = pp.Literal('{').suppress() rbra = pp.Literal('}').suppress() lang = pp.Literal('<').suppress() rang = pp.Literal('>').suppress() dot = pp.Literal('.').suppress() cstr = pp.quotedString.addParseAction(pp.removeQuotes) tag = pp.Group( lang + pp.Word(pp.alphanums) + pp.Optional(pp.Group(dot + cstr)) + rang) val = pp.OneOrMore( cstr | pp.Word(pp.nums + '.') ) exp = pp.Forward() exp << pp.OneOrMore( pp.Group( tag + pp.OneOrMore( (lbra + (val | exp) + rbra) | (val + exp) ) ) ) return exp.parseString(text) </code></pre> <p>我一定是做错了什么,但还没弄清楚到底是什么。。。更准确地说:下面的代码告诉我它需要一个'}'而不是一个新的'tag'。在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>这可能不是您想要的答案,但我认为<a href="https://github.com/westes/flex/" rel="nofollow noreferrer">Flex</a>将在这类任务中对您有很大帮助。甚至可能有一个python包装器</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
区分轴上的像素大小
8 回答
区分过度拟合与良好预测
5 回答
区分通过POST接收的数据并在Cherrypy中获取
10 回答
区分重写和重载
8 回答
区分金贾二号的类型
9 回答
区别:IF IN和IF==python
5 回答
区别:list.append()与incrementequal?
6 回答
区别:创建在启动wx应用程序时不“阻止”控制台的脚本
6 回答
区别于python中的命令行和CGI
6 回答
区别关系
5 回答
区别是什么APIClient.enforce\ csrf\检查以及APIClient.handler.enforce\ csrf\ u检查
7 回答
区块.draw()未在python空闲模式下工作
7 回答
区块链API调用输出对象名称而不是内容
5 回答
区块链nonce值随负载变化
2 回答
区块链Python语法错误(Snakecoin)
9 回答
区块链不连接到服务器和矿工
9 回答
区块链信息钱包支票支付员
1 回答
区块链和区块链密码错误
4 回答
区块链尝试向Transaction字典添加键/值以创建区块链
6 回答
区域:IOError:[Errno 22]无效模式('w')或filenam
8 回答