2011-06-14 15 views
2

我試圖編寫一個正則表達式來匹配<a>標記,其中包含未知順序的ID和href。正則表達式:與隨機順序屬性匹配的<tag>

當前的正則表達式我現在所擁有的是

/<[Aa]\s[^>]*(href="http:\/\/example.com"|id="badge")\s[^>]*(href="http:\/\/example.com"|id="badge")[^>]*>(.*)<\/a>/'; 

我匹配上的代碼被

<a id="badge" target="_blank" href="http://example.com"> 
    <img src=""> 
</a> 

有沒有更有效的方法以匹配<a>標籤?

+4

是的。使用HTML解析器。 – SLaks 2011-06-14 18:39:18

+0

這個問題具體詢問效率問題。如果你正在尋找處理速度,那麼正則表達式是更快的解決方案。如果您正在尋找易用性,可維護性和健壯性,那麼HTML解析器會更好。 – 2013-06-07 23:02:44

回答

3

匹配<a>標籤的最佳方法是根本不使用正則表達式。你不會說你正在使用哪個平臺,但我會打賭它有一個體面的HTML解析器,你可以利用它。