lua脚本string.format
时间: 2024-09-10 13:11:03 浏览: 116
Lua53Lib.zip
`string.format` 是 Lua 语言中用于格式化字符串的一个函数。它可以将多个值按照指定的格式转换成字符串。`string.format` 函数的第一个参数是格式字符串,其余参数是待格式化的值。格式字符串中可以包含普通的文本和格式说明符,格式说明符用于指定每个值的格式。
格式说明符以 `%` 开始,后面可以跟有以下标记:
- `d`、`i`:表示十进制整数。
- `o`:表示八进制整数。
- `x`、`X`:表示十六进制整数。`x` 用于小写字母,`X` 用于大写字母。
- `f`:表示浮点数。
- `e`、`E`:表示科学计数法表示的浮点数。`e` 用小写的 `e` 表示指数部分,而 `E` 用大写的 `E` 表示。
- `g`、`G`:表示浮点数,如果指数部分小于 -4 或大于等于精度,则使用科学计数法。`g` 使用小写的 `e`,`G` 使用大写的 `E`。
- `c`:表示单个字符(整数的 ASCII 码)。
- `s`:表示字符串。
- `%`:表示一个 `%` 字符。
格式说明符的完整形式还包括可选的修饰符:
- `+`:表示总是包括符号(正数或负数)。
- `-`:表示左对齐。
- `#`:表示格式化时会改变数字的记数系统。
- `0`:表示使用前导零填充。
- `宽度`:表示最小字段宽度。如果指定的值较短,则用空格或前导零填充至该宽度。
- `.精度`:对于浮点数表示小数点后的位数;对于字符串表示最大长度。
例如:
```lua
local a = 10
local b = 20
print(string.format("a = %d, b = %02d", a, b)) -- 输出:a = 10, b = 20
```
在这个例子中,`%d` 表示格式化为十进制整数,`%02d` 表示格式化为至少两位的十进制整数,并且不足部分用零填充。
阅读全文