2015-02-24 63 views
0

我對以下格式的字符串:如何提取方括號內的單詞?

[ GroupOne : 2015 | 10/12 | A ] && [ GroupTow : 2015 | 10/20 | C ] && [ GroupThree : 2015 | 10/15 | B ] 

要通過的preg_match提取物中的第一方括號的第一句話

//Only the first part 
$Number_Group //GroupOne 
$Yers = //2015 
$Data = //10/12 
$Type = //A 
+0

一致的是,冒號和只有兩個管道將始終分隔數據?你有沒有嘗試過任何正則表達式? – chris85 2015-02-24 04:31:44

+1

對於這樣的字符串,['sscanf()'](http://php.net/manual/en/function.sscanf.php)可能是更好的選擇。 – cpilko 2015-02-24 04:35:14

+0

@ J7xx看我編輯 – 2015-02-24 05:08:19

回答

0

是不是跟預浸比賽,但它的工作原理

<?php 

    $cad = "[ GroupOne : 2015 | 10/12 | A ] && [ GroupTow : 2015 | 10/20 | C ] && [ GroupThree : 2015 | 10/15 | B ]"; 

    $values = explode('&&', $cad); 

    $part1 = explode(':', substr(trim($values[0]), 1, -1)); 
    $Number_Group = $part1[0]; 
    echo $Number_Group . '<br/>'; 

    $other = explode('|', $part1[1]); 
    $Year = $other[0]; 
    echo $Year . '<br/>'; 

    $Data = $other[1]; 
    echo $Data . '<br/>'; 

    $Type = $other[2]; 
    echo $Type . '<br/>'; 

    ?> 
+0

怎麼分 $ Number_Group ='GroupOne'; $ Yers ='2015'; $ Data = '10/12'; $ Type ='A'; – J7xx 2015-02-24 05:00:31

+0

你只需要這個值? – 2015-02-24 05:02:05

+0

測試代碼,我更新代碼。你有你的4個變種 – 2015-02-24 05:16:04