如何在PHP中使用preg_match获取此文本?
我有以下HTML代码如何在PHP中使用preg_match获取此文本?,php,html,preg-match,Php,Html,Preg Match,我有以下HTML代码 <b>Description: </b>TEXT TO BE GRABBED<br> 说明:要抓取的文本 我需要使用preg_match函数来抓取“要抓取的文本” 我尝试了以下方法,但没有成功: <?php preg_match('#<b>Description: </b>(.*)<br>#', $content, $match); ?> 有人能给我解释一下从HTML中提取文本的正
<b>Description: </b>TEXT TO BE GRABBED<br>
说明:要抓取的文本
我需要使用preg_match函数来抓取“要抓取的文本”
我尝试了以下方法,但没有成功:
<?php preg_match('#<b>Description: </b>(.*)<br>#', $content, $match); ?>
有人能给我解释一下从HTML中提取文本的正确方法吗
谢谢。不要用正则表达式解析HTML。如果必须这样做,那么您的尝试(在编辑之前的原始问题中)几乎是正确的,但是您在
中有一个额外的/
——HTML中没有。你应该:
preg_match('#<b>Description: </b>(.*)<br>#', $content, $match);
// $match[1] contains the text "TEXT TO BE GRABBED"
preg#u match('#说明:(.*)
#',$content,$match);
//$match[1]包含文本“要抓取的文本”
问题中包含的代码运行良好:
<?php
$content = "<b>Description: </b>TEXT TO BE GRABBED<br>";
preg_match('#<b>Description: </b>(.*)<br>#', $content, $match);
print_r($match);
RegEx不是从HTML获取内容的最佳实践。很抱歉,这是一个输入错误。我已经更正了帖子。如果这是一个打字错误,那有什么问题?只需参考$match[1]
。