爲什麼preg_replace刪除HTML實體無效?爲什麼此preg_replace不起作用?刪除HTML實體
// Remove all HTML entities
$text = preg_replace('/&[A-Za-z0-9]+?;/',' ', $text);
我只是試圖取代所有HTML實體,如(& ###;,<,和等)的空間,但我似乎失去了一些東西,因爲它不是取代他們,我現在完全混淆了。
測試用例
代碼:
// Remove all HTML entities
$title="♥♥♥ I like cats ♥♥♥";
echo "BEFORE : ".$title."\n";
$title2 = preg_replace('/&[A-Za-z0-9]+?;/e',' ', $title);
echo "AFTER : ".$title2."\n";
輸出:
BEFORE : ♥♥♥ I like cats ♥♥♥
AFTER : ♥♥♥ I like cats ♥♥♥
PHP的信息:
PHP版本:Ubuntu的5.3.6-13 3.5
正則表達式庫:捆綁庫啓用
http://regexadvice.com/forums/thread/17340.aspx – hackartist 2012-02-12 19:24:59
按預期工作。您的輸入有些不同,或者您錯誤地應用了它。 – mario 2012-02-12 19:31:31
我加了我如何測試它,它不適合我。 – 2012-02-12 19:42:37