如何在Python中处理非格式Json数据?

如何在Python中处理非格式Json数据?,python,Python,我不熟悉正则表达式,我想得到'query:'和',“'之间的内容。 示例数据如下所示。 我尝试了常规字符串,如“^query(.*),“$”,但它不起作用,我不知道为什么,我如何处理这个问题?如果您确实想使用regex提取文本,请尝试以下方法: import re a_pattern = re.compile("query\:(.+?)\,") re.findall(a_pattern, 'query:text_you_want_to_extract,') 请尝试使用“作为分隔符: re.s

我不熟悉正则表达式,我想得到'query:'和',“'之间的内容。 示例数据如下所示。
我尝试了常规字符串,如“^query(.*),“$”,但它不起作用,我不知道为什么,我如何处理这个问题?

如果您确实想使用regex提取文本,请尝试以下方法:

import re

a_pattern = re.compile("query\:(.+?)\,")
re.findall(a_pattern, 'query:text_you_want_to_extract,')
请尝试使用“作为分隔符:

re.split(“[\”]+”,“查询:“此处的某些文本””)

您的输出将类似于:
['query:','some text here','']

这是JSON数据,不要用正则表达式解析它。使用Python,但它不是json数据的标准格式,在使用之前,我必须重新格式化它;它不是标准的JSON。但是看起来您可以使用YAML解析它,请参阅(一旦安装了PyYAML库)。您还需要在每个冒号后面添加空格,这样您的行看起来像
import yaml;导入urllib2;data=yaml.load(urllib2.urlopen(“https://maps-api-ssl.google.com/maps/suggest?q=hello“”.read().替换(“:”,“:”)
。这对你有用吗?yaml是解决我问题的最好方法,谢谢你的建议。