繁体   English   中英

PHP-删除粗体文本

[英]PHP - Remove text that is bold

我有一些关于ex的文字: This is <b>an</b> example <b>text</b>.

如何删除粗体标记内的所有文本,因此应输出以下内容:

This is example.

使用preg_replace()
如果您想删除一个简单标签及其中的文本,请执行以下操作:

<?php 
$string = 'This is <b>an</b> example <b>text</b>';
echo preg_replace('/(<b>.+?)+(<\/b>)/i', '', $string); 

输出:
这是例子


并添加一个正则表达式(class,id),空格错误和反斜杠:

<?php
$string = 'This is <b class="c1" id=\'c2\'>an</b> example <b>text</B >'; 
echo preg_replace('@<(\w+)\b.*?>.*?</\1.*?>@si', '', $string); 

输出:
这是例子

简单的解决方案:

echo str_replace(array('<b>', '</b>'), '', 'This is <b>an</b> example <b>text</b>');

可能会有更好的技术。 在这里,我只是用空字符替换数组中序列的所有出现。 有关更多信息,请参见php.net 他们在那里有一个类似的例子:

// Provides: Hll Wrld f PHP
$vowels = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
$onlyconsonants = str_replace($vowels, "", "Hello World of PHP");

编辑。 我错过了regex标签,但是正则表达式对于这个目的来说有点过分了吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM