在Lua中的printf格式化。

可能的重复:

Lua- 格式化整数

如何以使其返回1.000.000的方式格式化整数,例如1000000?

可以使用printf来解决这个问题吗?有人知道如何做吗?参数是什么样子?

我目前正在使用Corona SDK / Lua,并且有一个类似于printf的格式化函数。

点赞
用户6236
用户6236

Lua 中类似于 C 的 printf 格式化的 Format 函数是 string.format

http://www.lua.org/manual/5.1/manual.html#pdf-string.format

请注意,它不支持千位分隔符,因为它不是标准的 C89,而是 SUSv2 的扩展。

2012-09-10 14:36:49
用户1190388
用户1190388

你需要一个自定义函数,例如:

function comma_value(amount)
  local formatted, k = amount, 0
  while true do
    formatted, k = string.gsub(formatted, "^(-?%d+)(%d%d%d)", '%1,%2')
    if (not k) or k==0 then
      break
    end
  end
  return formatted
end

更多数字格式化函数,请访问这里

2012-09-10 14:45:53