用于从id以特定字符串开头的div中提取内容的正则表达式

2022-03-22 00:00:00 regex php preg-replace

我想从id以特定字符串开头,但以任何字符结尾的div中提取内容。示例:

我有一个div

<div id="content_message_56384">
  My first post.
</div>

我的代码:

$regex = '#<div id="content_message_[*]">(.+?)</div>#s';
preg_match($regex, $intro, $matches);
echo $match = $matches[0];

但是我没有得到任何结果。请帮帮忙。


解决方案

代码应为:

$string = "<div id="content_message_56384">
  My first post.
</div>";
$regex = '/<div id="content_message_(?:d+)">(.+?)</div>/s';
preg_match($regex, $string, $matches);
print($maches[1]);

请注意,我在这里使用的是非捕获表达式(?:d+),因为您只需要<div>中的内容。

相关文章