python正则表达式语法

时间:2013-11-02 02:54:24

标签: python regex

... html ...
[{"url":"/test/test/url","id":"111111"},{"url":"/test/test/url","id":"111111"},    {"url":"/test/test/url","id":"1111"}]
.... html ...

我在html中有一些json类型的字符串。

如何使rex表达式将模式提取为

“/ test / test / url”和“1111”位于“id”之后:

提前致谢,

2 个答案:

答案 0 :(得分:4)

请勿在此处使用正则表达式,请使用json模块。这就是它的设计目标。

import json
mylist = json.loads(html)
for subdict in mylist:
    print subdict['url']
    print subdict['id']

答案 1 :(得分:1)

你应该使用@Haidro的答案,但是如果你想使用正则表达式,或者看看你怎么做,那么这里有一些示例代码:

regex = re.compile(r'\"url\":("[^"]+"),\"id\":("[^"]+")')
match = re.finditer(regex, yourString)

for m in match:
    print m.group(1), m.group(2)

[^"]是一个用于接受所有非"个字符的字符类。

修改
我喜欢我推荐另一个答案的方法,但如果一个人真的想知道,我会解释如何做到这一点,但我仍然会被投票。