【发布时间】:2012-12-09 14:42:07
【问题描述】:
我在 Python 中使用正则表达式来搜索页面源,并在 javascript 中找到所有 json 信息。具体来说,示例如下所示:
变量 fooData = { 编号:123456789, 名称:“富吧”, 国家名称:“富”, country_is_eu:空, foo_bars:空, foo_email:空, foo_rate: 1.0, foo_id: 0987654321 };我对了解正则表达式的所有知识还很陌生,我不确定我所做的是否正确。我可以得到一些单独的线路,但我不完全确定如何使用 re.MULTILINE。这是我现在拥有的代码:
prog = re.compile('[var ]?\w+ ?= ?{[^.*]+\n};', re.MULTILINE)
vars = prog.findall(text)
为什么这不起作用?
为了更清楚,我真的需要它来匹配这些括号之间的所有内容,如下所示:
变量 fooData = { };所以,基本上我无法找到一种方法来匹配每一行,除了如下所示:
};
【问题讨论】:
-
checkout my response,我更新了,也许你想试试
-
是的,谢谢你帮助我!没想到
[^}]+这么简单,不知道你能做到。 -
有一个内置的
json模块很有用。听起来您应该使用它而不是正则表达式。 -
显然,当我拥有整个页面源时,要解析 json,我必须先找到它。
标签: python regex json python-2.7