如何使用空格和换行来爆炸字符串?

时间:2013-07-29 07:35:14

标签: php delimiter

我想爆炸一个字符串(基于分隔符分隔并放入一个数组中),使用空格(“”)和换行符(“\ n”)作为分隔符。

该方法(我认为不是最好的方法)是:

  1. 按空格分解数组
  2. 重新制作数组中的字符串
  3. 再次为新线条分解
  4. MySQL逃避各个元素。
  5. 问题:如何用空格和新行分解字符串?

    参考:new line Array

3 个答案:

答案 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;
}

会给你一个包含所有单词的数组。