2013-03-19 103 views
-1

我想使用正則表達式匹配正則表達式匹配字符串的報價和HREF

<a href = "something" > 
下面的字符串中

, 但沒有被打印出來。

E = '<a> test <a href> <a href = "something" ><a href="anything">' 
H = re.match('^[<a href = ]\".\" >$' , E) 
print (H) 
+2

不要使用正則表達式來解析html! – Volatility 2013-03-19 08:37:40

+1

和你想匹配什麼? – VladL 2013-03-19 08:38:26

+2

我不解析HTML,它只是一個練習練習,我只是試圖在字符串中搜索 – 2013-03-19 08:39:17

回答

0

我建議你不要使用正則表達式來解析HTML(對於有BeautifulSoup
既然你說,你是不是,這裏是東西:

>>> regex = re.compile("(<\s*a\s*href\s*=\s*\"something\"\s*>)+") 
# Run findall 
>>> regex.findall(string) 
[u'<a href = "something" >'] # your tag 
1

不要用正則表達式解析html。

下面是一個使用BeautifulSoup一個例子:

from BeautifulSoup import BeautifulSoup, SoupStrainer 


html_string = '<a> test <a href> <a href = "something" ><a href="anything">' 
for link in BeautifulSoup(html_string, parseOnlyThese=SoupStrainer('a')): 
    print link.get('href')