0
我使用以下代碼從PHP中的HTML文本塊中過濾出url。在php中替換所有不匹配url模式的url url
preg_replace('#<a(?![^>]+?href="?http://keepthisdomain.com/foo/bar"?).*?>(.*?)</a>#i', '\1', $text);
它旨在替換與指定的url模式不匹配的所有url。不過,我確實希望包含所有具有rel =「shadowbox [a]」屬性的標籤。
我該如何修改這個preg_replace來做到這一點?
爲了澄清,這是一個匹配:(1)與'指定的URL圖案*和* A'標籤' rel =「shadowbox [a]」''屬性,或者(2)具有指定URL模式*或* rel =「shadowbox [a]」屬性的'a'標記? –
P.S.您最好不要使用正則表達式,而應該使用解析器,因爲[在此答案中闡述的原因](http://stackoverflow.com/a/1732454/2057919)。 –
這是一個rel =「shadowbox [a]」屬性的標籤。我想保留這些網址(以及鏈接到http://keepthisdomain.com/foo/bar的所有超鏈接) – lordmj