lua 获取文件名和扩展名

local str = "aaa.bbb.bbb.txt"

--获取文件名
function getFileName(str)
    local idx = str:match(".+()%.%w+$")
    if(idx) then
        return str:sub(1, idx-1)
    else
        return str
    end
end

--获取扩展名
function getExtension(str)
    return str:match(".+%.(%w+)$")
end

ngx.say("源字符串:"..str)
ngx.say("====================")
ngx.say("文件名:"..getFileName(str))
ngx.say("====================")
ngx.say("扩展名:"..getExtension(str))

URL加码、解码

--解码
function decodeURI(s)
    s = string.gsub(s, ‘%%(%x%x)‘, function(h) return string.char(tonumber(h, 16)) end)
    return s
end

--加码
function encodeURI(s)
    s = string.gsub(s, "([^%w%.%- ])", function(c) return string.format("%%%02X", string.byte(c)) end)
    return string.gsub(s, " ", "+")
end
时间: 2024-10-10 05:40:33

lua 获取文件名和扩展名的相关文章

获取文件名的扩展名

文件名类型有:http://localhost/code/loginfile/index.ini.php?username=aaa E:\xampp\php/login.php login.php function file_extension($url) { //第一步:判断是否有问号"?" $file="";  //存储整个文件名称 if (strstr($url,"?")){ list($file)=explode("?"

java获取文件名及扩展名总结

如:文件filePath = "E:\\test\\test.dxf" 1.获取文件名 eg:获取 test.dxf 通过file对象 import java.io.File; public class test { public static void main(String[] args) { String filePath = "E:\\test\\test.dxf"; File tmpFile=new File(filePath); String fileN

C# 获取文件名及扩展名

转载自  http://www.cnblogs.com/libushuang/p/5794976.html string aFirstName = aFile.Substring(aFile.LastIndexOf("\\") + 1, (aFile.LastIndexOf(".") - aFile.LastIndexOf("\\") - 1));  //文件名 string aLastName = aFile.Substring(aFile.L

C/C++ 解析文件路径 获取文件名和扩展名

1. _splitpath函数 在c或者c++编程中,常常会用到获取程序或文件的路径,比对路径做分解和合并处理,_splitpath和_makepath就可以完成这样的功能. 函数的声明 void _splitpath( const char *path, char *drive, char *dir, char *fname, char *ext ); 功能是分解路径,把你的完整路径给分割开来,就是一个对字符串进行分割的函数. 参数表 参数 描述 path Full path(完整路径) dr

PHP 获取文件名和扩展名的方法

dirname(path) path: 代表你的文件路径,必须为绝对路径,可以使用__FILE__, 表示列出当前文件的绝对路径,包含文件名 函数会返回当前文件的上一级路径,也就是除了文件名称的路径 eg: echo __FILE__; // 输出 // D:\phpStudy\WWW\xml_drivers\test.php echo dirname(__FILE__); //输出 // D:\phpStudy\WWW\xml_drivers glob(dirname/*) 获取指定文件夹下的

Asp.Net 获取FileUpload控件的文件路径、文件名、扩展名

string fileNameNo = Path.GetFileName(FileUploadImg.PostedFile.FileName); //获取文件名和扩展名string DirectoryName = Path.GetDirectoryName(FileUploadImg.PostedFile.FileName); //获取文件所在目录string Extension = Path.GetExtension(FileUploadImg.PostedFile.FileName); //

php 获取url的扩展名

方法一: function getExt($url){ $urlinfo = parse_url($url); $file = basename($urlinfo['path']); if(strpos($file,'.') !== false) { $ext = explode('.',$file); return $ext[count($ext)-1]; } return 'no extension'; } 测试的url: echo getExt('http://www.sina.com.c

windows 如何删除fis3的发布路径[文件名或扩展名太长,目录层次多无法删除的问题]

问题 这几天遇到一个小问题,windows下无法直接删除fis3的发布目录dist,因为在执行命令fis3 release -wL 时出现错误,导致dist内部嵌套的子目录太多(47层): 直接删除会报错:[文件名或扩展名太长无法删除,要么就是目录层次过多] 解决方法 使用的是npm里面一个专门用于删除的模块插件,本人用来处理fis3 遇到的情况.有人用于处理node_modules无法删除的情况 安装 npm install rimraf -g 操作 rimraf <path> [<p

文件名和扩展名

文件扩展名,对于使用电脑的菜鸟们来说,这或许是个非常陌生的名字.也许很多人都要问,文件名就文件名塞,还什么扩展名哟?然而在我们实际应用中就经常会遇到一些这样的现象:电脑中一些莫名其妙的文件总是打不开,及时打开了怎么图标总是和别人计算机里面的不一样等等.废话少说了,言归正传. 文件扩展名 是操作系统用来标志文件格式的一种机制.通常来说,一个扩展名是跟在文件名后面的,由一个分隔符分隔.在一个像"readme.txt"的文件名中,readme是文件名,txt为扩展名,表示这个文件是一个纯文本