正则表达式为preg_match经典和纬度的刮取html

时间:2013-11-04 16:09:34

标签: php regex preg-match

你能看到我的正则表达式匹配来自某些抓取的HTML的经度和lattiude出错了吗?

脚本应该通过使用file_get_contents来加载一些html然后使用正则表达式和preg_match来提取经纬度。目前,下面的脚本输出的是纬度和经度的空白,我不确定是什么问题,正则表达式对我来说不是一个非常强大的区域。感谢。

$url = 'http://www.homebase.co.uk/webapp/wcs/stores/servlet/StoreLocatorFlow?slsid=658';

$scrapedPage = file_get_contents($url);

返回的html中有一行,如下所示:

<p class="geo"> <abbr class="latitude" title="52.19166">52.19166</abbr> <abbr class="longitude" title="-2.23108">-2.23108</abbr> </p> 

然后我们做preg_match:

preg_match('/class="latitude"\s*title="([^"]+)"/', $scrapedPage, $lat);
preg_match('/class="longitude"\s*title="([^"]+)"/', $scrapedPage, $lon);

echo '<latitude>'.$lat[1].'</latitude>';
echo '<longitude>'.$lon[1].'</longitude>';

0 个答案:

没有答案