簡體   English   中英

使用preg_replace

[英]Using preg_replace

我將如何替換所有具有空行的pagenum pncolor類的span標簽(及其內部的所有標簽)。 str_replace無法正常工作,因為它們的名稱都不同,所以我假設我會使用preg_replace,但是我確定它是如何工作的。

<span class='pagenum pncolor'><a id='page_001' name='page_001'></a>001</span>
<p>Some text</p>

<span class='pagenum pncolor'><a id='page_130' name='page_130'></a>130</span>
<p>Some text</p>
<p>Some text</p>
<p>Some text</p>

<span class='pagenum pncolor'><a id='page_120' name='page_120'></a>120</span>
<p>Some text</p>

<span class='pagenum pncolor'><a id='page_100' name='page_100'></a>100</span>
<p>Some text</p>

使用此正則表達式: #<span class='pagenum pncolor'>.*?</span>#si

我要說的是強制性的: 您無法使用正則表達式解析[X] HTML。 因為正則表達式無法解析HTML。 正則表達式不是可用於正確解析HTML的工具。

但是,在這種情況下使用正則表達式也是有罪的。如果這樣做,我會使用@andreas的答案。

假設$ text = {THE_HTML_STRING_YOU_POSTED_IN_YOUR_QUESTION};

你可以試試:

preg_replace("/<span class='pagenum pncolor'>(.*)<\/span>/",'',$text);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM