代码之家  ›  专栏  ›  技术社区  ›  ptrcao

PHP preg_match失败,即使存在regex模式

  •  1
  • ptrcao  · 技术社区  · 3 年前

    我所做的一切。我试过了 preg_match » . 这是我尝试的解决方案:

    <?php
    $breadcrumb = array (
      'More » Brackets & Mounting » StarTech MNRISERCLMP',
      'Printer Consumables » Toner Cartridges » Other Brand » Sharp MX27GTMA',
      'More » Audio Visual » TVs » Philips 43BDL4051T-EXG',
      'Servers » Server Cables & Accessories » Other Server Accessories » LINKBASIC LB-WCC09-655-CA'
    );
    
    
    
    foreach($breadcrumb as $breadcrumbs){
            preg_match("/.*(?=\s»\s)/",$breadcrumbs,$matches);
            echo $matches[1] . '<br />';
        }
    


    警告 在 线


    警告 :未定义数组键 1英寸 [...][...] 13


    :中未定义数组键1 在线 13


    :中未定义数组键1 13

    我理解错误告诉我没有匹配,但逻辑上我不明白为什么 预赛 失败了。

    1 回复  |  直到 3 年前
        1
  •  2
  •   id'7238    3 年前

    事实上你的结果会在 $matches[0] :

    echo $matches[0] . '<br />';
    

    或者试试这个模式:

    preg_match("/(.+)\s»\s.+$/", $breadcrumbs, $matches);
    echo $matches[1] . '<br />';