我使用這個代碼去除錨標記,並用表達取下錨標記,並使用正則表達式
<ul class="alpha">
<li><h3><a href="http://www.overstock.com/Electronics/Computers-Tablets/473/dept.html?TID=TN:ELEC:Comp">Computers & Tablets</a></h3></li>
<li><a href="http://www.overstock.com/Electronics/2-in-1s/28195/subcat.html?TID=TN:ELEC:2in1">2-in-1s</a></li>
<li><a href="http://www.overstock.com/Electronics/Laptops/133/subcat.html?TID=TN:ELEC:Lap">Laptops</a></li>
</ul>
表達得到的只有內部文本得到呈陣列狀內文是:
echo preg_replace('#<a.*?>([^>]*)</a>#i', '$1', $str);
輸出是:
Computers & Tablets
2-in-1s
Laptops
我們可以得到錨定標記內的文本陣列形式定期使用體現在哪裏?請分享你的想法。
它是PHP呢?你可以用'DOMDocument'輕鬆做到這一點。 –
而不是'preg_replace'使用'preg_match_all' – anonymous
作爲一般規則:使用DOM解析,而不是正則表達式來解析HTML。 – Alexander