我想爆炸一个字符串(基于分隔符分隔并放入一个数组中),使用空格(“”)和换行符(“\ n”)作为分隔符。
该方法(我认为不是最好的方法)是:
问题:如何用空格和新行分解字符串?
答案 0 :(得分:12)
你可以做一个
$segments = preg_split('/[\s]+/', $string )
此函数会在每个空格($string
)出现时拆分\s
,包括空格,制表符和换行符。多个连续的空格将计为一个(例如"hello, \n\t \n\nworld!"
将仅在hello,
和world!
中分割,中间没有空字符串。
参见功能参考here。
答案 1 :(得分:7)
您可以使用preg_split
使用多个分隔符
$pattern = '/[ \n]/';
$string = "something here ; and there, oh,that's all!";
echo '<pre>', print_r( preg_split( $pattern, $string ), 1 ), '</pre>';
答案 2 :(得分:1)
总是从大到小。
首先按"\n"
拆分,然后按" "
拆分。
$data = "This is a test\nAnd something new happens.";
$rows = explode("\n", $data);
$words = array();
foreach($rows as $row) {
$temp = explode(" ", $row);
foreach($temp as $word)
$words[] = $word;
}
会给你一个包含所有单词的数组。