Lua操作字符串的5个代码片段分享

时间:2022-11-17 15:59:35

1.匹配字符串中的数字、字母和下划线

 

复制代码 代码如下:


str = "hello_+asdf2312+887441a+asdf"
table = {}
string.gsub(str, "([%w_]+)",

 

function(w)

table.insert(table,w)

end
end

 

2.替换字符串中的指定字符

 

复制代码 代码如下:

str = "hello,john"
s = string.gsub(str, "john", "james")
s ==>"hello,james"

 

3.判断字符串中是否有目标字串

 

复制代码 代码如下:

str = "hello,john"
start, end = string.find(str, "hello")
start ==>1
end ==>5

 

4.从文件的绝对路径中获取到文件名

 

复制代码 代码如下:


fn_flag = string.find(filename, "\\")

 

if fn_flag then

dest_filename = string.match(filename, ".+\\([^\\]*%.%w+)$")
end

 

fn_flag = string.find(filename, "/")

if fn_flag then

dest_filename = string.match(filename, ".+/([^/]*%.%w+)$")
end

 

5.去掉字符串中括号内的内容,并去掉收尾的空格

 

复制代码 代码如下:


str = " helloa,ni hao (asdfasdf) "
newstr = string.gsub(str,"%b()","")

 

newstr = string.gsub(newstr, "^%s*(.-)%s*$", "%1")

print(newstr)---->helloa,ni hao