为什么这个不能用@代替所有的逗号,除了'位置,状态'中的那个?preg_replace不工作? PHP
$test = preg_replace("#([^ ])([,])([^ ])#","[email protected]$3","100,,,'test','two',,'location, state',,[],1")
预期:100个@@@ '测试' @ '二' @@ '的位置,状态' @@ [] @ 1
实测值:100 @ ,, '测试' @ '二' @,'location,state'@,[] @ 1
我认为这是因为连续的逗号在模式中匹配,我如何从匹配的字符开始继续包含所有逗号?
什么是您目前的结果和你预期的结果? – Jocelyn 2012-08-16 05:41:07