繁体   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