使用PHP 7.2,我使用以下代码在英国邮政编码中插入一个空格:
$postcode = "AB123CD";
echo wordwrap($postcode, strlen($postcode) - 3, " ", true);
上面的代码给出了正确的结果......" AB12 3CD"。
但是如果邮政编码更短,则代码插入2个空格而不是1.例如" A12BC"等于" A1 2B C"什么时候应该是" A1 2BC"。
我做错了什么?
答案 0 :(得分:0)
此解决方案效果更好,任何大小的邮政编码:
$postcode = "AB123CD";
echo preg_replace("/([0-9]{1}[A-Za-z]{2})$/", " $1", $postcode); // AB12 3CD
$postcode = "A12BC";
echo preg_replace("/([0-9]{1}[A-Za-z]{2})$/", " $1", $postcode); // A1 2BC