先輩方、こんにちは
問題が発生しました、
文字列:
[2015/07/07 00:00:00] test001 405433AH 127.0.0.1 開始
この文字列を配列に分割したいです
理想的な結果:
配列( [0] =>[2015/07/07 00:00:00] [1] =>test001 [2]=>405433AH [3]=>127.0.0.1 [4]= >開始 )
この文字列をどのように分割すればよいでしょうか?
爆発を使用しようとしましたが、分割できませんでした。
先輩方からアドバイスをお願いします。
ありがとうございます。
$s = '[2015/07/07 00:00:00] test001 405433AH 127.0.0.1 Start';$a = sscanf($s, "[%s %8s]\t%s\t%s\t%s\t%s");print_r($a);
Array( [0] => 2015/07/07 [1] => 00:00:00 [2] => test001 [3] => 405433AH [4] => 127.0.0.1 [5] => Start)は完全に一致しているわけではありませんが、妥当です
先輩、ありがとうございます
質問させてください
%s は文字列を表します
それで、 %8s?
% 8s は、キャラクターを 8 つ獲得したら終了するという意味です
explode を使用することもできますが、少し面倒です。
$str = '[2015/07/07 00:00:00] test001 405433AH 127.0.0.1 Start';$arr = explode(' ', preg_replace('/[ ]{2,}/', ' ', $str));$arr[1] = $arr[0].' '.$arr[1];unset($arr[0]);$arr = array_values($arr);print_r($arr);
二人の先輩、ありがとう
問題は解決しました。