ĐẶC BIỆT cho chuỗi mẫu của OP, vì mỗi chuỗi con được khớp là một từ duy nhất, bạn có thể sử dụng str_word_count () .
Mã: ( Bản trình diễn )
$str = ' red, green, blue ,orange ';
var_export(str_word_count($str,1)); // 1 means return all words in an indexed array
Đầu ra:
array (
0 => 'red',
1 => 'green',
2 => 'blue',
3 => 'orange',
)
Điều này cũng có thể được điều chỉnh cho các chuỗi con ngoài các chữ cái (và một số dấu gạch ngang và dấu nháy đơn - nếu bạn đọc bản in đẹp) bằng cách thêm các ký tự cần thiết vào mặt nạ ký tự / tham số thứ 3.
Mã: ( Bản trình diễn )
$str = " , Number1 , 234, 0 ,4heaven's-sake , ";
var_export(str_word_count($str,1,'0..9'));
Đầu ra:
array (
0 => 'Number1',
1 => '234',
2 => '0',
3 => '4heaven\'s-sake',
)
Một lần nữa, tôi đang xử lý câu hỏi này rất hẹp vì chuỗi mẫu, nhưng điều này sẽ cung cấp cùng một đầu ra mong muốn:
Mã: ( Bản trình diễn )
$str = ' red, green, blue ,orange ';
var_export(preg_match_all('/[^, ]+/',$str,$out)?$out[0]:'fail');