字符串格式化
在 Lua 中,字符串格式化主要通过 string.format() 函数实现。这个函数可以创建格式化的字符串,类似于其他编程语言中的格式化功能。
1. string.format() 函数
语法:
formatted_string = string.format(format_string, ...)
format_string是包含格式说明符的字符串。...是要格式化的变量,可以是多个参数。
返回值: 返回格式化后的字符串。
2. 格式说明符
格式说明符以 % 开头,后面跟随特定的字符,指示如何格式化对应的参数。常见的格式说明符包括:
%s:格式化为字符串%d:格式化为整数%f:格式化为浮点数%x:格式化为十六进制数%o:格式化为八进制数%c:格式化为字符(根据 ASCII 码)
3. 示例代码
以下是一些使用 string.format() 的示例:
-- 格式化字符串
local name = "Alice"
local age = 30
local formatted_string = string.format("名字: %s, 年龄: %d", name, age)
print(formatted_string) -- 输出: 名字: Alice, 年龄: 30
-- 格式化浮点数
local pi = 3.14159
local formatted_pi = string.format("圆周率: %.2f", pi) -- 保留两位小数
print(formatted_pi) -- 输出: 圆周率: 3.14
-- 格式化十六进制
local num = 255
local formatted_hex = string.format("十六进制: %x", num)
print(formatted_hex) -- 输出: 十六进制: ff
-- 格式化字符
local ascii_value = 65 -- ASCII 值对应字符 'A'
local formatted_char = string.format("字符: %c", ascii_value)
print(formatted_char) -- 输出: 字符: A
-- 格式化布尔值
local isTrue = true
local formatted_bool = string.format("布尔值: %s", isTrue)
print(formatted_bool) -- 输出: 布尔值: true
4. 格式化选项
你可以在格式说明符中使用额外的选项来控制格式化的行为:
- 宽度:指定输出的最小宽度。例如
%5d表示一个整数至少占用 5 个字符宽。 - 精度:对浮点数和字符串进行精度控制。例如
%.2f表示浮点数保留两位小数,%.5s表示字符串最多显示 5 个字符。 - 对齐:默认情况下,格式化结果是右对齐的。如果希望左对齐,可以在宽度前加上
-符号。例如%-5d表示左对齐,宽度为 5 个字符。
示例:
-- 宽度和对齐
local value = 42
local formatted_value = string.format("|%5d|", value) -- 右对齐
print(formatted_value) -- 输出: | 42|
formatted_value = string.format("|%-5d|", value) -- 左对齐
print(formatted_value) -- 输出: |42 |
5. 总结
string.format() 是一个强大的字符串格式化工具,可以让你轻松地生成格式化的字符串。通过使用格式说明符和选项,你可以根据需要控制输出的样式。在实际编程中,掌握字符串格式化可以使代码更加清晰和易于维护。
作者:xiazm 创建时间:2024-10-27 22:12
最后编辑:xiazm 更新时间:2024-10-27 22:37
最后编辑:xiazm 更新时间:2024-10-27 22:37