0
如何排除preg_split
正斜槓,後跟字符串括在單引號中?如何排除preg_split正斜槓,後跟單引號中的字符串
我已經對這個問題頗感興趣。
下面是代碼,其次是輸出。
$str = "storeid='1,2',categoryname = 'the ultimate \'operating room'";
$match = preg_split("/('[^'\\\\]*')/U", $str, null, PREG_SPLIT_DELIM_CAPTURE);
print_r($match);
輸出
Array ([0] => storeid= [1] => '1,2' [2] => ,categoryname = 'the ultimate \ [3] => 'operating room' [4] =>)
但這裏是我的預期產出,我要排除\」。
希望有人能理解並幫助我在這裏。
Array ([0] => storeid= [1] => '1,2' [2] => ,categoryname =[3] => 'the ultimate \'operating room' )
如果該模式將與任何突破轉義字符(單引號之間),這不是一個單引號。你應該用'(?s:\\\\。[^'\\\\\ *)*)替換'(?:\\\\'[^'\\\\ *] *)'來處理任何轉義包括換行符的字符。 –
我相信我寫回答的初始正則表達式很好。我不確定我在寫描述時想的是什麼。不管怎麼說,還是要謝謝你。 @CasimiretHippolyte – revo