我使用file_get_contents()基本上将网站的源代码转换为单个字符串变量。
源包含许多行,如下所示:
<td align="center"><a href="somewebsite.com/something">12345</a></td>
(很多行看起来不像那样)。我想提取所有idnumbers(上面的12345)并将它们放在一个数组中。我怎样才能做到这一点?我假设我想使用某种正则表达式,然后使用preg_match_all()函数,但我不确定如何......
答案 0 :(得分:4)
不要乱用正则表达式。获取变量并让DOM库为您完成平凡的任务。看看:http://sourceforge.net/projects/simplehtmldom/
然后你可以像树一样遍历你的HTMl并提取东西。如果你真的想要变得时髦,请阅读xPath。
答案 1 :(得分:1)
试试这个:
preg_match('/>[0-9]+<\/a><\/td>/', $str, $matches);
for($i = 0;$i<sizeof($matches);$i++)
$values[] = $matches[$i];