【发布时间】:2015-01-29 06:22:41
【问题描述】:
我有这段 html 代码,我正在尝试使用“points”“stat-label”解析 div 中的内容。 我已经为具有“stat-label”数量的 div 完成了此操作,并且效果很好。
preg_match('#\$[0-9]{1,3}(?:,?[0-9]{3})*(?:\.[0-9]{2})?#', $xx1, $output1);
$parts1 = $output1[0];
$val1 = trim(str_replace('$','',$parts1));
$value1= preg_replace('/[\$,]/', '', $val1);
但我无法让它读取“点”的值。有什么想法吗??
试过这个:
preg_match('/^\\d+(\\.\\d+)?$/D', $xx1, $output2);
结果是:
object(DOMNodeList)#7 (1) {
["length"]=>
int(0)
}
<div class="widget">
<div class="widget-header">
<!-- content -->
</div>
<div class="widget-content">
<div class="stat">
<div class="stat-header">
<div class="stat-label">
<!-- content -->
</div>
<div class="stat-value">
<!-- content -->
</div>
</div>
</div>
<hr>
<div class="stat">
<div class="stat-header">
<div class="stat-label">
<!-- content -->
</div>
<div class="stat-value">
<!-- content -->
</div>
</div>
</div>
<hr>
<div class="stat">
<div class="stat-header">
<div class="stat-label">
<!-- content -->
</div>
<div class="stat-value">
<!-- content -->
</div>
</div>
</div>
<hr>
<div class="stat">
<div class="stat-header">
<div class="stat-label">
Amount
</div>
<div class="stat-value">
<font color="green">$</font>123,456,678,012 </div>
</div>
</div>
<hr>
<div class="stat">
<div class="stat-header">
<div class="stat-label">
Points
</div>
<div class="stat-value">
12.14 </div>
</div>
</div>
<hr>
<div class="stat">
<div class="stat-header">
<div class="stat-label">
<!-- content -->
</div>
<div class="stat-value">
<!-- content -->
</div>
</div>
</div>
<hr>
<div class="stat">
<div class="stat-header">
<div class="stat-label">
<!-- content -->
</div>
<div class="stat-value">
<!-- content -->
</div>
</div>
</div>
</div>
</div>
【问题讨论】:
-
哦,读这一篇,你会喜欢的:golden link
-
@Dexa 好吧,我现在觉得我一直在用螺丝刀修剪胡须..lol 我完全理解我的方法是错误的。请指导我使用任何更好的方法,因为我对这一切都不熟悉。