2016-03-21 16 views
2

私はPHPで次の文字列を持っています。文字列の部分を抽出する方法

"File:content/resources/11933/Calm_Nebula_by_The_Free_Mason.jpgDate:Fri Mar 18 11:30:17 CET 2016Size:23124" 

ファイル、日付、サイズを別々に取得する必要があります。

必要な値を抽出する最も良い方法は何ですか?

explode() OR substring() 

Explodeには共通の値が必要です。部分文字列には開始と終了が必要です。どちらの場合も、私は少し混乱しています。

ご協力いただければ幸いです。

+0

あなたは正規表現が役立つかもしれません。 [preg_match()](http://php.net/manual/en/function.preg-match.php)を参照してください。 – showdev

+0

他の区切り文字は実際にはありませんか?日付と単語の間に 'Size'があります。そうでない場合は、explodeとsubstrの組み合わせを使用する必要があります。 –

+0

パターン認識にregexを使用します。 – frosty

答えて

4

これを試してみてください:

<?php 
$text = "File:content/resources/11933/Calm_Nebula_by_The_Free_Mason.jpgDate:Fri Mar 18 11:30:17 CET 2016Size:23124"; 
$pattern = '/file:(.*?)date:(.*?)size:(.*)/i'; 
preg_match($pattern, $text, $out); 
print_r($out); 
?> 

出力:

Array 
(
    [0] => File:content/resources/11933/Calm_Nebula_by_The_Free_Mason.jpgDate:Fri Mar 18 11:30:17 CET 2016Size:23124 
    [1] => content/resources/11933/Calm_Nebula_by_The_Free_Mason.jpg 
    [2] => Fri Mar 18 11:30:17 CET 2016 
    [3] => 23124 
) 

デモ:https://3v4l.org/OcSXH

関連する問題