将数字格式化为以千位分隔的形式(例如,12000000将变成12 000 000)。

在lua中,我想将整数(或浮点数)格式化为以空格(或逗号,在美国)分隔每三个小数位的数字,因此例如数字120000010将被呈现为 120 000 010 或 120,000,010

我已经发现这个链接,但有没有使用string.format或其他方式实现此目的而不涉及自定义实现的方法?

点赞
用户258523
用户258523

printf(以及其它相关的函数)可以通过 SUSv2 格式标记 ' 来实现。因此,printf "%'d\n" 1000000 将输出 1,000,000,但 lua 看起来不支持将它传递到系统的 printf 调用中。

为那些给我点踩的人澄清一下这个答案。这里的答案是“不行”。使用 string.format 唯一的方法是使用标记,如上所示,但是 lua 并不传递它。因此,我所知道的,没有其他方法可以做到这一点,除非使用 OP 问题中链接的自定义解决方案。

2014-09-08 14:07:01