我正在下载一个网页,并试图从中提取一些值。
我感兴趣的页面位置属于这种类型:
<a data-track=\"something\" href=\"someurl\" title=\"Heaven\"><img src=\"somesource.jpg\" /></a>
我需要提取 href (someurl) 值。请注意,我拥有的 HTML 字符串中有多个条目,例如上面的条目,因此我将使用一个列表来存储从字符串中提取的所有 URL。
这是我迄今为止尝试过的:
QString html_str=myfile();
QRegExp regex("<a data-track\\=\"something\" href\\=\".*(?=\" title)");
if(regex.indexIn(html_str) != -1){
QStringList list;
QString str;
list = regex.capturedTexts();
foreach(str,list)
qDebug() << str.remove("<a data-track=\"something\" href=\"");
}
使用上面的代码,我只得到一次出现 ( ),它包含从第一次出现到文件末尾list.count() == 1
的整个 HTML 字符串,没有其中的所有已被删除的字符串。someurl
<a data-track="something" href=""