本文介绍了REGEX-PHP仅获取字符串中的粗体部分的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是Regex的新手。我有一个类似于:

的字符串
Hello <b>ABCD</b> World
or
<b>ABCD</b>Hello World

我基本上希望保留粗体标记内的文本,但删除字符串中的所有其他字符。

我找到了删除字符串中粗体部分的代码:

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

那么我如何使它以相反的方式工作?

问候艾哈迈尔

Html

如果要从推荐答案或XML文档中提取数据,请使用DOM解析器而不是正则表达式。虽然正则表达式在简单的情况下也可以工作,但如果用例变得更加复杂或输入数据以意外的方式更改,就会变得很奇怪。DOM解析器更稳定、更方便。

示例代码:

$doc = new DOMDocument();
$doc->loadHTML('Hello <b>ABCD</b> World');

foreach($doc->getElementsByTagName('b') as $element) {
    echo $element->nodeValue;
}

这篇关于REGEX-PHP仅获取字符串中的粗体部分的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-29 13:10