2014-09-26 104 views
0

我有一个像下面获取特定部分从一个字符串到另一个

$str= '[[["how ","no use","",""],["to ","no use","",""],["solve this","no use","",""]]]'; 

一个字符串变量,我想这个字符串的某些部分,以使像下面

$result="how to solve this"; 

另一个是有可能从$ str创建$结果?

我是新来的PHP有人帮我解决这个或任何想法来解决这个问题。

回答

2

由于字符串是json,因此可以使用json_decode将该字符串转换为数组。由于整个东西被包裹在[]中,因此使用reset来剪掉外部阵列。

$string= '[[["how ","no use","",""],["to ","no use","",""],["solve this","no use","",""]]]'; 

$result = ''; 
foreach(reset(json_decode($string)) as $piece) 
{ 
    $result .= reset($piece); 
} 

echo $result; 
+0

感谢它的工作。 – 2014-09-26 18:33:46

+2

不客气!如果这回答了问题,请确保您将此标记为已回答! :) – castis 2014-09-26 18:35:06

0

鉴于您的字符串的结构,你很可能preg_grep找到任何串匹配[",直到下一个"

$regex = '/\\["([^"])"/'; 
$matches = preg_grep($regex,$str); 
$result = implode('',$matches); 

注意......我的正则表达式可能是生锈的;-)

相关问题