【openwrt】——lua字符串操作

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



参考资料:

http://download.csdn.net/detail/bull_liu/5186336

http://blog.csdn.net/langeldep/article/details/8455783

http://www.cnitblog.com/kenlistian/archive/2008/10/15/50292.html

你可能感兴趣的:(【openwrt】——lua字符串操作)