我正在嘗試做一些必須非常簡單的事情,但我對PHP相當陌生,而且我正在爲此付出努力。我想要的是分割包含0,1個或更多分隔符(大括號)的字符串,同時保持分隔符AND字符串與字符串之間的外部。拆分字符串,同時保持分隔符和字符串外部
例如:'你好{F} {N},你好嗎?'將輸出:
Array ([0] => Hello
[1] => {F}
[2] => {N}
[3] => , how are you?)
這裏是到目前爲止我的代碼:
$value = 'Hello {F}{N}, how are you?';
$array= preg_split('/[\{\}]/', $value,-1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
print_r($array);
其輸出(缺少大括號):
Array ([0] => Hello
[1] => F
[2] => N
[3] => , how are you?)
我也試過:
preg_match_all('/\{[^}]+\}/', $myValue, $array);
它輸出(大括號在那裏,但外面的文字是沖洗的):
Array ([0] => {F}
[1] => {N})
我很確定我在preg_split的良好軌道上,但錯誤的正則表達式。誰能幫我這個?或者告訴我,如果我走了嗎?
你有沒有嘗試過上面的preg_split調用你的第二個正則表達式? – mario