Lua的string函数也是我在日常工作中使用最多的,但是都是比较简单的~上周末看的视频讲的也比较浅显。整理一下笔记,不然我下次又忘记咋用了。。
--字符串可以用""或者用''来表示
--For example
local str1 = "Lua"
local str2 = 'Lua'
--常用的转义字符串:/r(回车)、/n(换行)、/r/n(回车换行)、//(输出斜杠)
--For example
print("你好\r好吗") ---回车
print("hello\nworld") ---换行
print("hello\r\nworld") ---回车换行
print("d:\\programe\\blua\\sublime")
---输出反斜杠,一般用于表示磁盘的路径
--使用string.len()或者#号计算字符串的长度。
--For example
local str1 = "Hello,Lua"
local str2 = "你好呀"
local len1 = string.len(str)
local len2 = #str2
print(len1) -> 9
print(len2) -> 12
--需要注意的是,每个字母和数字的长度都是1,但是每个汉字的长度则为3
--使用string.upper()将小写字母全部转换为大写字母
--使用string.lower()将大写字母全部转换为小写字母
--For example
local str1 = "Hello,Lua"
local str2 = "Hello,LUA"
print(string.upper(str1)) -> HELLO,LUA
print(string.lower(str2)) -> hello,lua
--使用string.find()查找字符串的位置,是从1开始的,不是0.
--For example
local str = "Hello,lua"
local start1 = string.find(str,"e") --默认从1开始查找
local start2 = string.find(str,"l",5) --从5的位置开始查找
local start,fin = string.find(str,"o") --获取起始和结束位置
print(start1) -> 2
print(start2) -> 7
print(start,fin) -> 5 5
--结合上面的字符串查找再使用string.sub()就可以将对应位置的字符串截取出来
--For example
local str1 = "你好呀"
local start,fin = string.find(str1,"好") --发现"好"字的前后位置
local str2 = string.sub(str1,start,fin) --将"好"截取出来
print(str2) -> 好
--使用string.gsub()实现字符串的替换
--注意与string.sub()区分,这个是字符串的截取
--For example
local str = "Hello,lua"
local gstr1 = string.gsub(str,"l","z") --将"l"替换为"z",默认全部替换
local gstr2 = string.gsub(str,"l",2) --将"l"替换为"z",替换2次
print(gstr1) ->hezzo,zua
print(gstr2) ->hezzo,lua
--这个我使用的比较少hhh
--使用string.reverse()实现字符串的反转
--For example
local str = "321"
print(string.reverse(str)) -> 123
--使用string.foramt()实现字符串的转换
--For example
local num1 = 10
local num2 = 20
local result = num1 + num2
print(string.format("%d + %d = %d",num1,num2,result))
->10 + 20 = 30
--常用的格式化字符串
%c --接受一个数字, 并将其转化为ASCII码表中对应的字符
%d, %i --接受一个数字并将其转化为有符号的整数格式
%u --接受一个数字并将其转化为无符号整数格式
%f --接受一个数字并将其转化为浮点数格式
%q --接受一个字符串并将其转化为可安全被Lua编译器读入的格式
%s --接受一个字符串并按照给定的参数格式化该字符串
—人生苦短,我爱学习
—the end—