日期:2014-05-17  浏览次数:20524 次

帮助写一个小正则
类似的数据格式为:0,37</td><td class="Pdata">72,5
要求把最后的72,5 匹配出来,php环境,谢谢!
(只要72,5,其他的数据都丢弃即可)

------解决方案--------------------
PHP code

$str    = '0,37</td><td class="Pdata">72,5';
preg_match("/.*?([\d]+,[\d]+)$/", $str, $m);
echo    $m[1];
////72,5

------解决方案--------------------
PHP code
<?php
$str='0,355</td><td class="Pdata">9500</td><td class="Pdata">11000</td><td class="Pdata">72,5</td>bla...';
preg_match_all('/(?:<td class="Pdata">(.*?)<\/td>)+/s',$str,$matchs);
echo $matchs[1][0];

------解决方案--------------------
探讨

72,5 可能是 0,355</td><td class="Pdata">9500</td><td class="Pdata">11000</td><td class="Pdata">这样的格式

------解决方案--------------------
探讨
这里哪有你前面说的72,5这样的格式呢?难道是0,355了?

------解决方案--------------------
莫非这样?

试试差多少
PHP code

preg_match("/.*>([\d,]+)/", $str, $m);
echo    $m[1];

------解决方案--------------------
可以 的
------解决方案--------------------
探讨
$str = '0,37</td><td class="Pdata">72,5';

$kkk9 =split('[>]', $str);

用这种数组分割的方式 可以吗,取最后一个数组里的内容?