提取数据PHP字符串

时间:2011-04-20 19:42:53

标签: php regex extract expression

我使用file_get_contents()基本上将网站的源代码转换为单个字符串变量。

源包含许多行,如下所示: <td align="center"><a href="somewebsite.com/something">12345</a></td>

(很多行看起来不像那样)。我想提取所有idnumbers(上面的12345)并将它们放在一个数组中。我怎样才能做到这一点?我假设我想使用某种正则表达式,然后使用preg_match_all()函数,但我不确定如何......

2 个答案:

答案 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];