2014-09-19 76 views
1

的內部報價 -蟒蛇 - 正則表達式與字符串

大家好,

我需要一隻手以下正則表達式。 字符串是一樣的東西:

str = 'value=\"20\" />\r\n\t\r\n<\/div>","whatiwant":"<div id=\"whatiwant\">\r\n\t\r\n\t\t<\/div>","idontwanthat":"<div id=\"idontwanthat\">\r\n\t\r\n\t blablalblalblalbla \t\r\n\t\t\t<\/div>"' 

我想的「whatiwant」整個股利。 我試過以下內容:

matches=re.findall(r'\"whatiwant\":\"(.+?)\":\"',mstr) 

ps:我可以在div中有其他div。

我任何幫助表示讚賞

+0

HTML解析器會更適合這個。這真的是你的字符串還是網頁的一部分? – Jerry 2014-09-19 09:43:49

+0

嗨,傑裏,我知道,但字符串不適合一個HTML解析器。我會用一個爲我想要的div – 2014-09-19 09:45:40

回答

1
"whatiwant":"(.*?[^\\])??" 

這將匹配內部雙字面"whatiwant":,然後任何東西(甚至是空字符串)報價""

如果要提取div的HTML代碼,你可以檢索第一組的值:

matches=re.findall(r'"whatiwant":"(.*?[^\\])??"', mstr) 
for match in matches: 
    html= match.group(1)