我有一个字符串$string = "(a(b,c)((d,e))(f,g))";
我想打印大多数子括号内的字符并打印括号计数
输出
> Most child parenthesis: 3
> Value contains: d,e
答案 0 :(得分:3)
这是我的快速实施:
$string = "(a(b,c)((d,e))(f,g))";
$count = 0;
$max_count = 0;
$final_string = '';
for ( $i=0; $i<strlen($string); $i++ )
{
if ( $string[$i] == '(' )
{
$count++;
if ( $count > $max_count )
{
$max_count = $count;
$final_string = "";
}
}
else if ( $string[$i] == ')' )
{
$count--;
}
else if ( $count == $max_count )
{
$final_string .= $string[$i];
}
}
echo "Most child parenthesis: ", $max_count, "\nValue contains: ", $final_string;
您可以在行动here中看到它。