我正在尝试编辑包含电话号码的字符串。但preg_replace应删除所有符号但数字 - 不起作用。
$phones = preg_replace_callback(
'/((\(\+\d{5}\)|\+?\d{5})-\d{3}-\d{2}-\d{2}|\+?\d{12})/',
function ($matches) {
echo "<br />".$matches[0];
preg_replace('/[^0-9]+/','',$matches[0]);
echo "<br />".$matches[0];
echo "<br />+".substr($matches['0'], 0, 5)."-".substr($matches['0'], 5, 7);
},
$stringWithPhoneNumbers);
答案 0 :(得分:0)
您需要将结果保存在变量中
+------------+-----------------------+
| COLLECTION | days |
+------------+-----------------------+
| ETE 2019 |[20191226,20191225,...]|
| HIVER 2019 |[20190626,20190825,...]|
+------------+-----------------------+
或退货。否则,您正在对未更改的初始preg_replace('/[^0-9]+/','',$matches[0], $matches2);
# ^^^
数组进行操作。此外,$matches
可缩短为[^0-9]+
。