我需要从html页面中删除数据
<div style="margin-top: 0px; padding-right: 5px;" class="lftFlt1">
<a href="" onclick="setList1(157204);return false;" class="contentSubHead" title="USA USA">USA USA</a>
<div style="display: inline; margin-right: 10px;"><a href="" onclick="rate('157204');return false;"><img src="http://icdn.raaga.com/3_s.gif" title="RATING: 3.29" style="position: relative; left: 5px;" height="10" width="60" border="0"></a></div>
</div>
我需要从onclick="setList1
......
答案 0 :(得分:2)
您应该使用DOMDocument或XPath。通常不建议使用RegEx来解析HTML。
答案 1 :(得分:1)
使用正则表达式:
/setList1\(([0-9]+)\)[^>]+title="([^"]+)"/si
和preg_match()或preg_match_all()
答案 2 :(得分:1)
请转through my previous answers about how to handle HTML with DOM。
XPath获取所有锚元素的文本内容:
//a/text()
XPath获取所有锚元素的title属性:
//a/@title
获取所有锚元素的onclick属性的XPath:
//a/@onclick
您必须使用一些字符串函数从onclick文本中提取数字。
答案 3 :(得分:0)
到目前为止,抓取的最好的lib是简单的html dom。基本上使用jquery选择器语法。
http://simplehtmldom.sourceforge.net/
您在此示例中获取数据的方式:
include("simple_html_dom.php");
$dom=str_get_html("page.html");
$text=$dom->find(".lftFlt1 a.contentSubHead",0)->plaintext;
//or
$text=$dom->find(".lftFlt1 a.contentSubHead",0)->title;
答案 4 :(得分:0)
我是这样做的
$a=$coll->find('div[class=lftFlt1]');
$text=$element->find("a[class=cursor]",0)->onclick;