2012-11-01 64 views
4
$date could be "23/09/2012" or "23-09-2012" or "23\09\2012" 
preg_split('/[\/\-\\]/', $date); 

不確定爲什麼PHP繼續拋出missing terminating ] error編譯失敗:缺失終止]字符分類

+0

你需要逃避連字符? –

+0

@Xin舊的正則表達式中有一個錯誤。請參閱最新的答案。對於那個很抱歉。 –

回答

8
preg_split('/[\/\-\\]/', $date); 
        ^escaping the closing ']' 

請不要使用以下,以去除不確定性

preg_split('/[\/\-\\\\]/', $date); 

沒有必要逃避-,但你可以使用\-爲好。


代碼:

$date = 'as\sad-s/p'; 
$slices = preg_split('/[\/\-\\\\]/', $date); 
print_r($slices); 

輸出:

Array ([0] => as [1] => sad [2] => s [3] => p) 
+0

@Xin Chen:我的正則表達式有一個錯誤,因爲它不是在'\\'分裂。請參閱最新的答案。 –