我想做以下事情:
我在数据库中有一个字符串,在插入时会以html标记存储,所以例如,我可能有以下字符串:
<h2>Hello World</h2>
<p>Cras mattis justo vitae diam sagittis ut porta eros aliquam.
Aenean vel nisi et nisl adipiscing blandit.
Donec tempor dictum risus a feugiat.
Nunc ac purus lectus. Morbi in suscipit ipsum.
Ut eu odio eu massa sollicitudin interdum.
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Maecenas fermentum hendrerit imperdiet.</p>
这是我在数据库中可能包含的字符串,我想丢弃它的<h2>
部分。
现在,据我所知,在这里做preg_replace()可以完成这项工作,但我需要查找哪种字符串模式?
非常感谢。
答案 0 :(得分:1)
请参阅链接网站上的Remove HTML Tags部分。 E.g。
@<h2[^>]*?>.*?</h2>@siu
答案 1 :(得分:1)
要真正回答您的问题,替换方法RegEx将是:
/<h2>(.+?)<\/h2>/
但是,正如评论所指出的,这不是最好的方法! :)
答案 2 :(得分:1)
很好的 Michael Wright 。
使用 strip_tags()函数解决此问题的另一种方法。
$patern = '<p>';
$str = '<h2>Hello World</h2><p>Cras mattis justo vitae diam .</p>';
strip_tags($str,$patern);
此代码生成以下输出
'Hello World<p>Cras mattis justo vitae diam .</p>'
此处$ pattrn包含仍保留在您数据中的标记列表。 strip_tags()删除除$ patern之外的所有标记。