我有一个字符串(JSON数据的一部分),并希望解析它在括号[...]。这里是例如:preg_replace剪辑字符串中的字符
例如 [-0.5937,2.0734,-0.1577,1.7941,0.2048,1.5296] >>>[-0.5937,2.0734],[-0.1577,1.7941],[0.2048, 1.5296]
我写了这个PHP代码工作良好,但问题是:当它找到','并添加'],['字符而不是它,删除了一些数字的坐标。您可以通过在坐标后添加值来检查它。例如-0.5937 => -0.5937123456789那么我该如何避免删除坐标位数?
示例代码
<?php
$line = '[-0.5937, 2.0734,-0.1577, 1.7941,0.2048, 1.5296]';
$brackets = preg_replace('/\d,\S/', '], [', $line);
echo $brackets;
?>
是始终有偶数个值? –
我会倾向于在逗号上爆炸,然后循环 – 2013-08-26 21:06:44
有时候可能有负坐标,所以在这种情况下,第一个字母是' - '例如:-0.5937 – mete7