繁体   English   中英

Python 使用 Pyparsing 解析逗号分隔的嵌套括号

Python parse comma seperated nested brackets using Pyparsing

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我想将逗号分隔的嵌套括号解析为嵌套列表:

from pyparsing import nestedExpr
str = r'[["http://google.com","Jose Rivas","http://google.com","some_guid"],"a year ago",null,null,4,null,"1003136023",["https://www.yahoo.com","Do it",null,"0ahU_pv"],null,null,"ChZDSUhNMG","0ahUKEwjBr"]'

z = nestedExpr('[', ']').parseString(str).asList()

这就是我得到的:

在此处输入图片说明

例如,为什么我得到 ',' (一个逗号)作为列表项或 ,null,null,null ? 如何解决?

1 个回复

这是一个普通的 JSON,尝试用json包解析它:

import json

raw = r'[["http://google.com","Jose Rivas","http://google.com","some_guid"],"a year ago",null,null,4,null,"1003136023",["https://www.yahoo.com","Do it",null,"0ahU_pv"],null,null,"ChZDSUhNMG","0ahUKEwjBr"]'
data = json.loads(raw)

print(data)
1 如何解析带括号的表达式的嵌套逗号分隔列表

我知道如何使用Python正则表达式模块解析嵌套括号。 这个正则表达式 正确地找到最外面的括号 ( 此处为示例) 我也知道如何在逗号分隔的列表中查找项目: 正确匹配列表中的元素 (请参阅此处 ) 但是我需要将两者结合起来。 我需要解析逗号分隔列表的 ...

2 如何以嵌套括号递归解析逗号分隔的字符串

我有逗号分隔的图输入,每个图输入以大括号()开始和结束。在大括号之间的是顶点和边的详细信息,形式如下 ({A,B,C},{(A,B),(B,C),(C,A)}),({A,B,C,D,E},{(A,B),(B,C),(C,A),(E,D),(D,A)}) 此输入字符串包含两个图形:({ ...

4 Python使用pyparsing解析SQL

我想解析一个具有(内部联接,外部联接)的复杂SQL,并获取该SQL中使用的表名。 如果能够简单选择,我就能得到表名,但是如果SQL具有内部联接(如下面所示)为左联接,则结果仅给出第一个表。 我正在使用类似Paul的以下链接中所示的程序。 http://pyparsing. ...

6 PyParsing Parse 嵌套循环,带大括号和特定标头

我发现了几个关于 pyparsing 的主题。 他们在解析嵌套循环时处理几乎相同的问题,但即使如此,我也找不到解决我的错误的方法。 我有以下格式: 键是字母 值可以是 Int、String 类型,带有字母 + "@._" 键/值可能在大括号块之后 键/值可能在第一个大括号块之前的文 ...

7 使用pyparsing解析嵌套函数调用

我正在尝试使用pyparsing来解析表单中的函数调用: 这很简单。 但由于它是一个递归下降的解析器,它也应该很容易解析: 这是我无法得到的。 这是一个煮沸的例子: 这是输出: 为什么我的解析器将内部表达式的仿函数解释为独立标识符? ...

8 使用pyparsing解析嵌套结构

我正在尝试解析生物序列中位置的特定语法。 这些职位可以有以下形式: 我希望将这些解析为dicts,大致如下: 我用pyparsing做了几次刺伤。 这是一个: 结果接近我想要的结果: 两个问题: asDict()仅适用于根parseResult。 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM