preg_match PHP各种情况

时间:2016-06-09 16:44:46

标签: php regex

我希望preg匹配在到达“Ho”或“<”时停止。我怎么能这样做?

我尝试使用[Ho<]但它不起作用,因为它是“H”或“o”或“<”。

感谢。

示例:

if(preg_match('/class="PuntoVentaDireccion">(.*?)[Ho<].*?Ventas\((.*?)\)</is', $info_tienda, $data)){
        echo $data[1];
        echo $data[2];
    }

1 个答案:

答案 0 :(得分:3)

据我所知,你想使用non capturing group (?:...)alternation a|b

if (preg_match('/class="PuntoVentaDireccion">(.*?)(?:Ho|<).*?Ventas\((.*?)\)</is', $info_tienda, $data)) {
    echo $data[1];
    echo $data[2];
}