LUA字符串路径中获取文件名、路径的模式匹配

来源:互联网 发布:怎样取淘宝店名 编辑:程序博客网 时间:2024/05/22 13:12
  1. --获取路径  
  2. function stripfilename(filename)  
  3.     return string.match(filename, "(.+)/[^/]*%.%w+$") --*nix system  
  4.     --return string.match(filename, “(.+)\\[^\\]*%.%w+$”) — windows  
  5. end  
  6.   
  7. --获取文件名  
  8. function strippath(filename)  
  9.     return string.match(filename, ".+/([^/]*%.%w+)$") -- *nix system  
  10.     --return string.match(filename, “.+\\([^\\]*%.%w+)$”) — *nix system  
  11. end  
  12.   
  13. --去除扩展名  
  14. function stripextension(filename)  
  15.     local idx = filename:match(".+()%.%w+$")  
  16.     if(idx) then  
  17.         return filename:sub(1, idx-1)  
  18.     else  
  19.         return filename  
  20.     end  
  21. end  
  22.   
  23. --获取扩展名  
  24. function getextension(filename)  
  25.     return filename:match(".+%.(%w+)$")  
  26. end  
  27.   
  28. local paths = "/use/local/openresty/nginx/movies/fffff.tar.gz"  
  29. print (stripfilename(paths))  
  30. print (strippath(paths))  
  31. print (stripextension(paths))  
  32. print (getextension(paths)) 
原创粉丝点击