我不知道';我不知道在php中有更多使用preg_match()的正则表达式

我不知道';我不知道在php中有更多使用preg_match()的正则表达式,php,html-parsing,Php,Html Parsing,这是一个web的副本,但我没有这样做,以显示div中的值:/ <div style="float:left;"> CARRERA 7H BIS No. 76 - 0 ALFONSO II </div> preg_match('|<div style="float:left;">(.*+)<

这是一个web的副本,但我没有这样做,以显示div中的值:/

<div style="float:left;">
    CARRERA 7H BIS No. 76 - 0 ALFONSO  II                                                                               
</div>

preg_match('|<div style="float:left;">(.*+)</div>|is' , $data , $cap );
echo "direccion: ".$cap[1].'<br>';

CARRERA 7H国际标准第76-0号阿方索II
preg|u match(“|(.*+)| is',$data,$cap);
回显“指令:.$cap[1]。
”;
$data='CARRERA 7H BIS第76-0号阿方索II';
预匹配('%(.*?%si',$data,$cap);
回显“指令:.$cap[1]。
”;
所以,你们很接近,但你们并没有逃脱关闭div,这就是问题所在。另外,捕获组正则表达式是错误的-这一个应该有效。在末尾添加了“s”修饰符-以防输入($data)中有新行

已更新目录的正则表达式:

$regex="%<div style='float:left;'>(.*?)<\/div>%si";
preg_match($regex, $data , $cap );
echo "direccion: ".$cap[1].'<br>';
$regex=“%(.*?%si”;
预匹配($regex,$data,$cap);
回显“指令:.$cap[1]。
”;
php代码在哪里?很简单。不要使用正则表达式。将html馈送到DOM并从中获取div的内容;发送您获得的数据示例。。。没有它,我们只能猜测。这个正则表达式适用于您的问题(已测试)中的示例。这更好-您需要:部门:考卡市:TIMBIO Puesto:Puesto CABECERA市政局局长:也就是说,GUILLERMO Valence Fecha de inscripción:2014年1月2日上午10:37 Mesa 42我猜?附言-这里没有双引号。。。
$regex="%<div style='float:left;'>(.*?)<\/div>%si";
preg_match($regex, $data , $cap );
echo "direccion: ".$cap[1].'<br>';