0
<h1>title 1</h1 w:id="0"/><p>content</p><h1>title 2</h1 w:id="1"/>...
我想從</h1 w:id:="0 or 1 ect "/>
preg_replace函數:正則表達式不起作用
更換w:id="0"/
我用這個代碼:
preg_replace("</h1 (.*?)>",'',$html)
但它不工作了
<h1>title 1</h1 w:id="0"/><p>content</p><h1>title 2</h1 w:id="1"/>...
我想從</h1 w:id:="0 or 1 ect "/>
preg_replace函數:正則表達式不起作用
更換w:id="0"/
我用這個代碼:
preg_replace("</h1 (.*?)>",'',$html)
但它不工作了
你缺少的你的正則表達式的分隔符。
正則表達式需要一個'起始標記'和一個類似的'結束標記',所以PHP可以將它的內容解釋爲匹配項,並將其全部標記出來。
沒有公認的分隔符,在簡單文本和正則表達式之間不可能區分開來。
試試這個正則表達式:
@</h1 (.*?)>@
或者:
~</h1 (.*?)>~
PHP支持多幾個分隔符,像<>
和/
。
作爲一個方面說明,我建議以下的正則表達式:
~</h1([^>]+)?>~i
試試這個
preg_replace("/<\/h1 (.*?)>/i",'</h1>',$html);
定義 「不行」。 – 2015-01-21 11:05:30
你可能需要額外的[正則表達式分隔符](http://php.net/manual/en/regexp.reference.delimiters.php)。 – mario 2015-01-21 11:06:15
只需添加一點:你現在得到什麼,你期望什麼,所有的嘗試! – Rizier123 2015-01-21 11:06:30