我有一个这样的字符串:
$mystring = '[5][1][0]One[4][0][0]Two[8][1][1]Three';
如何获得这些:
$prefix1 = '[5][1][0]';
$prefix2 = '[4][0][0]';
$prefix3 = '[8][1][1]';
$newString = 'One Two Three';
答案 0 :(得分:1)
以下是使用Regex
提取所需结果的两个示例。这可以优化为一个表达式。但它应该是你的起点:
获取: "One Two Three"
preg_match_all("/\]([a-z]*)/i", $a, $m);
print implode(' ', array_filter($m[1])) . "\n";
获取: "[5][1][0]"
,"[4][0][0]"
和"[8][1][1]"
preg_match_all("/(\[[0-9\[\]]*)[a-z]/i", $a, $m);
foreach($m[1] as $v) {
print $v . "\n";
}