0
下面的正則表達式有什麼問題?正則表達式:匹配或替換它
$content = '
<span style="text-decoration: underline;">cultural</span>
<span style="text-decoration: line-through;">heart</span>
<span style="font-family: " lang="EN-US">May</span>
';
$regex = '/<span style=\"text\-decoration\: underline\;\">(.*?)<\/span>/is';
if (!preg_match($regex,$content))
{
$content = preg_replace("/<span.*?\>(.*?)<\/span>/is", "$1", $content);
}
我想要做的是去除所有跨度除了跨度要麼,
style="text-decoration: underline;
或
style="text-decoration: line-through;
我怎樣才能解決呢?
正確的做法是使用一個[DOM文檔](http://www.php.net/manual/en/class.domdocument.php)(HTML解析器)並避免像瘟疫一樣的正則表達式。 –
請在這裏閱讀我的問題'http:// stackoverflow.com/questions/6793224/dom-parser-remove-certain-attributes-only'。謝謝。 – laukok
所以你不想聽取建議來訪問'style'屬性並解析它?這比在HTML上使用正則表達式要好得多。 –