需要一個簡單的preg_replace將所有<br>
<br/>
和所有可能的br組合轉換爲<br />
。將所有br標籤轉換爲一個通用<br />
這需要爲了工作,所以我可以處理字符串即: $output = preg_replace('', '<br />', $input)
謝謝大家!
需要一個簡單的preg_replace將所有<br>
<br/>
和所有可能的br組合轉換爲<br />
。將所有br標籤轉換爲一個通用<br />
這需要爲了工作,所以我可以處理字符串即: $output = preg_replace('', '<br />', $input)
謝謝大家!
一個正則表達式來解決所有問題:
$output = preg_replace('/<\s*br[^>]*>/i', '<br />', $input);
/<?[bB] [rR]?/? ?>/
這涵蓋了至少95%的所有組合,所以我不會不情願地使用downvote。 – dwo 2009-12-09 13:23:27
+1即使它。 – 2010-02-03 22:56:44
[強制性HTML解析器評論]
如果您與未知的和非一致的HTML工作(因爲它聽起來像你),然後放下正則表達式,你可能會傷害你自己。查找標籤列表並更改文檔是HTML分析器的基礎。
瞭解PHP DOM Methods併爲自己節省很多心痛。
強制性+1遵循強制性HTML解析器建議 – 2009-12-09 12:51:40
嘗試這種模式
<\s*[bB][rR]\s*\/?\s*>
BTW你知道
是不合法的HTML嗎?法律HTML是
。
是XHTML。 – cletus 2009-12-09 12:55:28
cletus,'
'在HTML 4中很好,它將通過驗證,並且不會在瀏覽器中導致任何問題。 – 2009-12-09 13:01:48