【发布时间】:2012-11-01 02:10:57
【问题描述】:
我有一个类似的字符串
"first,second[,b],third[a,b[1,2,3]],fourth[a[1,2]],sixth"
我想把它炸成数组
Array (
0 => "first",
1 => "second[,b]",
2 => "third[a,b[1,2,3]]",
3 => "fourth[a[1,2]]",
4 => "sixth"
}
我试图删除括号:
preg_replace("/[ ( (?>[^[]]+) | (?R) )* ]/xis",
"",
"first,second[,b],third[a,b[1,2,3]],fourth[a[1,2]],sixth"
);
但是下一步卡住了一个
【问题讨论】:
-
您想使用正则表达式将字符串拆分为字符串数组吗?如果是这样,请将其作为对 get an idea on the regex used 的参考进行检查
-
我试图删除括号 preg_replace("/[ ( (?>[^[]]+) | (?R) )* ]/xis", "", "first,second[, b],第三[a,b[1,2,3]],第四[a[1,2]],第六");但是在下一步被卡住了
-
如果你知道你的分隔符是什么样的,你就不需要正则表达式。
-
PHP 有 CSV 解析器。下载一个并使用它。问题解决了。不要用正则表达式这样做(原因很简单:这是浪费时间,因为用正则表达式实际上是不可能的)。