Lua string库

Lua 的 string 库提供了一系列用于处理字符串的功能。这些功能包括查找、替换、分割字符串以及对字符串进行格式化等操作。下面是一些常用的 string 库函数及其用法:

字符串库函数

  1. string.len(s)

    • 返回字符串 s 的长度(以字节为单位)。
  2. string.byte(s[, i])

    • 返回字符串 s 中第 i 个字符的整数表示(默认为第一个字符)。每个字符都是一个 8 位的字节。
  3. string.char(…)

    • 接受一系列整数作为参数,并返回一个包含这些整数对应的字符的字符串。
  4. string.sub(s, i[, j])

    • 返回字符串 s 的子串,从位置 ij(默认为字符串末尾)。
  5. string.find(s, pattern[, init[, plain]])

    • 在字符串 s 中查找 pattern。返回模式匹配部分的第一个和最后一个字符的位置。如果 plain 为真,则模式被视为纯字符串。
  6. string.gsub(s, pattern, repl[, n])

    • 在字符串 s 中全局替换所有与 pattern 匹配的部分。repl 可以是字符串也可以是一个函数。n 表示替换的最大次数。
  7. string.rep(s, n)

    • 返回由字符串 s 复制 n 次的结果。
  8. string.lower(s)

    • 将字符串 s 中的所有字母转换为小写。
  9. string.upper(s)

    • 将字符串 s 中的所有字母转换为大写。
  10. string.reverse(s)

    • 返回字符串 s 的逆序版本。
  11. string.format(format, …)

    • 返回格式化的字符串。format 是一个带有占位符的字符串,... 是要插入的值。
  12. string.pack(s)

    • 将字符串 s 打包成一个二进制形式,这个形式可以用 string.unpack 来解包。
  13. string.unpack(b [, i [, n]])

    • 解包由 string.pack 创建的二进制数据块 b,从位置 i 开始,最多解包 n 个元素。
  14. string.rep(s, n)

    • 返回由字符串 s 重复 n 次的结果。

示例

让我们看一些 string 库函数的示例用法:

-- 获取字符串长度
print(string.len("Hello, world!"))  -- 输出: 13

-- 获取字符的 ASCII 值
print(string.byte("Hello, world!", 1))  -- 输出: 72

-- 将 ASCII 值转换为字符
print(string.char(72, 101, 108, 108, 111))  -- 输出: Hello

-- 获取子字符串
print(string.sub("Hello, world!", 8))  -- 输出: world!

-- 查找字符串
local pos = string.find("Hello, world!", "world")
print(pos)  -- 输出: 8

-- 替换字符串
print(string.gsub("Hello, world!", "world", "Lua"))  -- 输出: Hello, Lua!

-- 字符串反转
print(string.reverse("Hello, world!"))  -- 输出: !dlrow ,olleH

-- 格式化字符串
print(string.format("%s %s", "Hello", "world!"))  -- 输出: Hello world!

这些函数非常有用,可以帮助你在 Lua 中高效地处理字符串。如果你有具体的使用场景或者需要进一步的帮助,请告诉我!

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值