Lua学习笔记 字符串操作 string

str = "abcd";
str1 = "我";

--#str 可以获取字符串长度
print(#str);--4
-- 一个汉字占3个长度(在utf-8中是3个,gbk中是两个。和编码有关)
print(#str1);--3
-- 多行字符串(也可以用转义字符)
str = [[
    多
    行
    字符串
]]

print(str);
--[[
    多
    行
    字符串
]]

-- 字符串拼接
str = "123".."456";
print(str);--123456
-- 类似c语言中的拼接
print(string.format( "str的值为%s. str1的值为%s",str,str1 ));--str的值为123456. str1的值为我

-- 其他类型转string
value = 10;
tostring(value);

-- 小写转大写(不改变源字符串,返回新的)
str = "abcd";
str = string.upper( str );
-- 大写转小写
str = string.lower( str );

-- 反转
str = string.reverse( str );

str = "abcdefg";
-- 字符串索引(从1开始),返回两个值,第一个是开始位置,第二个是结束位置
print(string.find( str,"cd" ));

-- 字符串截取 3 代表从3开始,4代表 到4结束。如果没有4,代表从3开始到结尾
print(string.sub( str, 3,4 ));--cd

-- 字符串替换(用 ** 去替换 cd ,返回替换了几次,即又几个cd)
str = string.gsub( str,"cd","**")
print(str);

-- 字符 转 ASCII码
a = string.byte( "abc",1 );
print(a);

-- ASCII 转 字符
print(string.char(a));

猜你喜欢

转载自blog.csdn.net/Groyo/article/details/113755054