【发布时间】:2017-06-26 02:26:49
【问题描述】:
我有以下 HTML
<div class="fiche-detail">
<div class="ColG">
<div class="ColG1">
<div class="bloc-info">
<h2 class="titre filet-bottom3">Coordinates</h2>
<p>
555, avenue du Pont Nord<br />
Alma, Québec<br />
G8B6T5
</p>
<p>
Phone number : 418 668-4657 <br />
Fax : 418 668-2770
</p>
</div>
</div>
</div>
<div>
我正在尝试提取以下详细信息并将它们加载到“storedetails”数组中:
街道编号 (555)
街道(北桥大道)
城市(阿尔玛)
州(魁北克)
邮政编码 (G8B6T5)
电话号码
传真
坐标(来自底部的js,也从上面那个页面加载)
正则表达式是唯一的解决方案,还是有更好的方法来做到这一点,至少知道每个地址的长度可能不同。
如果正则表达式是唯一的方法,是否有可能获得一些指针。我不确定我应该从标签开始多远。喜欢 from 因为这是自上而下此特定标签的第一个实例。
谢谢!
<script type="text/javascript">
dojo.addOnLoad(function(){
var mapCenter = new google.maps.LatLng(48.55970, -71.63980);
var optionsList = {
zoom: 16,
center: mapCenter,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("GoogleMap"), optionsList);
var storeMarker = new google.maps.Marker({
position: mapCenter,
map: map,
icon: image
});
});
</script>
【问题讨论】:
-
您可能想要使用正则表达式解析器来提取每个感兴趣的
<p>,然后使用正则表达式来梳理各种地址组件。 -
嗨,所以我想出了以下内容:(\d+), (\D+),\s(\D+)
\s+(\D\d\D\d \D\d)\s+\s+。似乎得到了我最想要的。另一个问题是可以将 () 包围的每个正则表达式匹配组输出到我正在谈论的数组中。尝试谷歌,但似乎无法获得正确的关键字。
-
@Senri 是否要使用
PHP从HTML中提取数据?