php 正则获取指定内容之间内容

2024年11月19日 14:43
有3个网友回答
网友(1):

主要是你把变量写错了,下面是修改的代码。


$str='

  • 数量:1899
  • ';
    if(preg_match('/([^<]*)<\/em>件<\/li>/i', $str, $matches)) {
    print_r($matches);
    echo '我要截取的内容:' . $matches[1] . "\n";
    }

    ?>

  • 网友(2):

    错误很明显,这一行

    if(preg_match_all('/([^<]*)<\/em>件<\/li>/i', $data, $matches)) {

    里面的 $data 哪来的???为什么不是 $str ??? 而变量 $str 根本没有参与运算。所以你得到是一片空白。

    网友(3):


    $str='

  • 数量:1899
  • ';
    if(preg_match_all('/([^<]*)<\/em>件<\/li>/i', $str, $matches)) {
    print_r($matches);
    echo '我要截取的内容:' . $matches[1][0] . "\n";
    }

    这样就正确了