做采集经常遇到的问题是内容排版问题,用了一些时间写了个用正则替换html标签和样式的函数,共享下。
<div class="codetitle"><a style="CURSOR: pointer" data="7130" class="copybut" id="copybut7130" onclick="doCopy('code7130')"> 代码如下:
做采集经常遇到的问题是内容排版问题,用了一些时间写了个用正则替换html标签和样式的函数,共享下。
<div class="codetitle"><a style="CURSOR: pointer" data="7130" class="copybut" id="copybut7130" onclick="doCopy('code7130')"> 代码如下:
",
"/<\/div>/i" => "
',
"/<\/tr>/i" => '
",
"/<iframe.
',//替换半角、全角空格,换行符,用排除写入数据库时产生的编码问题);
$config = array(
//'indent' => TRUE,//是否缩进
'output-html' => TRUE,//是否是输出xhtml
'show-body-only'=>TRUE,//是否只获得到body
'wrap' => 0
);
$content = tidy_repair_string($content,$config,'utf8');//先利用PHP自带的tidy类库修复html标签,不然替换的时候容易出现各种诡异的情况
$content = trim($content);
foreach ( $replaces as $k => $v ) {
$content = preg_replace ( $k,$v,$content );
}if(strpos($content,'
')>6)//部分内容开头可能缺失
标签
$content = '
'.$content;$content = tidy_repair_string($content,'utf8');//再修复一次,可以去除html空标签
$content = trim($content);
return $content;
}