簡體   English   中英

帶有preg_split的regexp無法正常工作

[英]regexp with preg_split doesn't work as expected

我在這里測試了regexpal.com ,它應該匹配,但是不匹配...

$tabla_contenido = "ouseout=\"sacarobs();\">06/01/2014&nbsp;10:21</a></td><td align='right'><a class='texto'><b>Pendiente</b></a></td><td align='right'><a class='texto'><b>Pendiente</b></a></td><tr class='eltr' onclick=\"ventana('mostrar_nota_de_pedido.php?nnp=117&ven=152&cli=0001&scl=C07&pr=96244651', 'pedidos_listadoNelson');\" ><td align='right'><a class='texto'>117</a></td><td align='right'><a c";
$tabla_data = preg_split("|<tr([^>.]|\.|\,)*>|", $tabla_contenido);
foreach ($tabla_data as $line){
    echo $line."\n\n\n";
}

$ tabla_data為空

問題是您沒有轉義| 在您的正則表達式中 最簡單的解決方案是使用其他定界符,例如~

$tabla_data = preg_split("~<tr([^>.]|\.|\,)*>~", $tabla_contenido);

或者,您可以轉義| 帶有反斜杠的字符,即| 會變成\\| ,但它會使您的正則表達式有點難以理解,因此建議您改用其他定界符。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM