Lua 字符串写法

Alexer 发布于 阅读:20 速查

Lua 里字符串用单引号或双引号都行,两边必须配对,用法上没差别。引号、换行这类字符用反斜杠转义。

local a = 'hello'
local b = "hello"
local c = "他说:\"走\""
local d = 'it\'s ok'
local e = "第一行\n第二行"

多行文本用两个方括号包起来,里面的转义不生效,紧跟在开头的换行会被忽略。

local html = [[
<div>
  内容
</div>
]]

拼接用两个点,数字会自动转成字符串;取长度用 #。

local s = "abc" .. 1
print(s)   -- abc1
print(#s)  -- 4

常用函数有 string.format 做格式化、string.sub 截取、string.find 查找、string.gsub 替换、string.rep 重复、string.upper 和 string.lower 转大小写。字符串也能用冒号形式直接调用方法。

local s = "Hello Lua"
print(string.sub(s, 1, 5))              -- Hello
print(s:upper())                        -- HELLO LUA
print(string.format("%s-%d", "id", 8)) -- id-8
print(string.rep("ab", 2))              -- abab
print(string.gsub(s, "Lua", "World"))  -- Hello World

记住字符串是不可变的,所有操作都返回新串,原来的字符串不会被改动。

语法基础 Lua 函数用法