Lua 最强大的特性之一就是它的字符串处理能力,它支持字符格式化输出,具有可扩展的模式匹配查找功能,以及一些实用的字符操作,例如查询、截取、替换和删除等字符串操作,这些字符串操作函数都封装在一个名为 string 的模块里。
Lua 里的字符索引是从 1 开始,索引值也可以是负数,这种情况将被解释成向后索引,从字符串末尾开始算起。
下面是 Lua 5.2 提供的字符串操作函数:
[b]byte[/b]
函数 [url=http://www.lua.org/manual/5.2/manual.html#pdf-string.byte]string.byte[/url] 把字符串里的第 i 个字符转为 [url=http://zh.wikipedia.org/zh-cn/ASCII]ASCII [/url]编码,默认是输出第一个字符的编码(只有一个参数的话),用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.char]string.char [/url]是把一个 ASCII 编码转换为对应的字符,用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.dump]string.dump [/url]返回一个函数二进制形式的字符串,用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-load]string.dump [/url]实现了函数的序列化,函数可以很轻松的传递,并在其他作用域调用。函数 string.dump 出来的二进制字符串,可以用 [url=http://www.lua.org/manual/5.2/manual.html#pdf-load]load[/url] 函数反序列回来直接调用。
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.find]string.find[/url] 查找字符串 s 里第一个符合查找字符 pattern 的位置,用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.format]string.format [/url]用于把字符串格式化输出,用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.gmatch]string.gmatch [/url]会返回一个迭代函数,尅通过该函数遍历到一个字符串 s 中所有出现指定匹配模式 pattern 的地方,用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.gsub]string.gsub[/url] 用于全局字符串替换,字符串 s 里满足匹配模式 pattern 格式的字符都会被替换成 repl 参数的值,用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.len]string.len[/url] 用于返回字符串 s 的长度,用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.lower]string.lower [/url]用于把字符串 s 里的字母转为小写,用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.match]string.match [/url]用于查找字符串 s 里第一个匹配对模式 pattern 的值,并返回匹配值,用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.rep]string.rep [/url]返回一个由分隔符 sep 隔开的重复(repeat)n 次字符 s 的字符串,用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.reverse]string.reverse [/url]用于倒转一个字符串 s 的排序,用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.sub]string.sub [/url]用于从字符串 s 里截取一个从第 i 个字符到第 j 个字符间的子字符串,用法:
[url=http://www.lua.org/manual/5.2/manual.html#pdf-string.upper]string.upper[/url] 用于把字符串 s 里的字母转为大写,用法:
string.upper (s)
例如:
print(string.upper("AbCdEfG"))
微信版

扫一扫进微信版
返回顶部