Php 如何通过在每组三位数之间插入空格来格式化数字?
我使用preg replace通过在每组三位数字之间插入空格来分隔数字:Php 如何通过在每组三位数之间插入空格来格式化数字?,php,Php,我使用preg replace通过在每组三位数字之间插入空格来分隔数字: $alexa_rank_raw = 8389876; $alexa_rank = preg_replace("/(\d{3})/", '$1.', $alexa_rank_raw); // alexa rank becomes: 838.987.6 如何进行替换,使最终数字如下所示: 8.389.876 有什么想法吗?你要找的 但这里还有一个正则表达式版本,因为为什么不呢 $rank = preg_replace('
$alexa_rank_raw = 8389876;
$alexa_rank = preg_replace("/(\d{3})/", '$1.', $alexa_rank_raw);
// alexa rank becomes: 838.987.6
如何进行替换,使最终数字如下所示:
8.389.876
有什么想法吗?你要找的
但这里还有一个正则表达式版本,因为为什么不呢
$rank = preg_replace('/(\d{1,3})(?=(\d{3})+$)/', '$1.', $alexa_rank_raw);
工作原理:它贪婪地匹配最多三个数字的组(尽可能多地匹配最多三个数字),但使用正向前瞻断言,从匹配组结束的位置到输入的结尾,有三个数字的精确倍数
您正在寻找的
但这里还有一个正则表达式版本,因为为什么不呢
$rank = preg_replace('/(\d{1,3})(?=(\d{3})+$)/', '$1.', $alexa_rank_raw);
工作原理:它贪婪地匹配最多三个数字的组(尽可能多地匹配最多三个数字),但使用正向前瞻断言,从匹配组结束的位置到输入的结尾,有三个数字的精确倍数
嗯…通过对
$alexa\U RAK\U raw
的反转运行上面相同的preg\U replace
,然后反转结果?嗯…通过对$alexa\U rank\U raw
的反转运行上面相同的preg\U replace
,然后反转结果?您应该执行数字格式($alexa_rank_raw,0,,,,,。);
因此没有添加0。您应该执行number_格式($alexa_rank_raw,0,,,,,。);
而不是添加0。