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

解决方案 »

  1.   


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

  2.   

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

  3.   

    <?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];匹配最后一个么
      

  4.   

    看lz意思貌似是匹配最后一个<td class="Pdata"></td>里面的内容全部匹配出来再取end  不是很省事?
      

  5.   

    0,37</td><td class="Pdata">72,5
    5,5</td><td class="Pdata">5600</td><td class="Pdata">72,5
    11,2</td><td>dddd</td><td class="Pdata">4800</td><td class="Pdata">72,5
    ===================================================================
    前面的长度不定,但是一定是最后一个">"后面的
      

  6.   

    莫非这样?试试差多少preg_match("/.*>([\d,]+)/", $str, $m);
    echo    $m[1];
      

  7.   

     
    $str = '0,37</td><td class="Pdata">72,5';$kkk9 =split('[>]', $str);用这种数组分割的方式 可以吗,取最后一个数组里的内容?