有时候我们需要通过文件名或者路径,得到该文件的后缀名(扩展名),可以通过如下几种方式进行截取。例如文件名为:
var name="xxxxx.txt";
方式一:subtring()
使用subtring() 截取字符串,对于文件名中会出现多个点的很有用,从最后一个点的地方截取。
var suffix = name.substring(name.lastIndexOf("."));//.txt
/*只获取后缀*/
var suffix =name.substring(name.lastIndexOf(".")+1);//txt
方式二:正则
使用正则,对只会出现一个点的适用:
var suffix = name.match(/.[^.]+$/)[0];//.txt
/*只获取后缀*/
var suffix = name.match(/[^.]+$/)[0];//txt
方式三:转数组
var suffix = '.'+name.split('.').pop();//.txt
方式四:substr()
同subtring()的字符串截取
var suffix = name.substr(name.lastIndexOf("."));//'.txt'
var suffix = name.substr(name.lastIndexOf(".")+1);//txt
有时候我们需要通过文件名或者路径,得到该文件的后缀名(扩展名),可以通过如下几种方式进行截取。例如文件名为:var name="xxxxx.txt";方式一:subtring()使用subtring() 截取字符串,对于文件名中会出现多个点的很有用,从最后一个点的地方截取。var suffix = name.substring(name.lastIndexOf("."));//.txt/*只获取后缀*/var suffix =name.substring(name.lastIndex
代码如下:function lastname(){ //
获取
欲上传的
文件
路径var filepath = document.getElementById(“file1”).value; //为了避免转义反斜杠出问题,这里将对其进行转换var re = /(\\+)/g; var filename=filepath.replace(re,”#”);//对路径字符串进行剪切截取var one=filename.split(“#”);//
获取
数组中最后一个,即
文件名
var two=one[one.length-1];//再对
文件名
进行截取,以取得
后缀名
var three=two.split(“.”)
在上传
文件
时,常常要对
文件
的类型即对
文件
的
后缀名
进行判断,用
javascript
可以很容易的做到这一点。用
Javascript
解析一个带绝对路径的
文件名
并得到
后缀名
的方法有很多种,这里列出一种,以供参考。
对于一个带绝对路径的
文件名
如:D:\Program Files\Notepad++\Notepad++.exe
首先为了避免转义反斜杠出问题,可以用正则表达式来将\或\\替换成#,如:
D:#Program Files#Notepad++#Notepad++.exe
之后以‘#’为分隔符,将字符串分解成数组,得到如下数组:
D: ProgramFiles Notepad++ Notep
var text_name='
文件名
测试.mp4'
//
文件名
var name=text_name.substring(0, text_name.lastIndexOf("."));
// 转码后的
后缀名
var txt=text_name.substring(text_name.lastIndexOf('.')+1)
function getFileExtension1(filename) {
return /[.]/.exec(filename) ? /[^.]+$/.exec(filename)[0] : undefined
这里的/[.]/.exec(filename)是用来判断.是否存在,如果不存在的话,其值为null,/[^.]+$/.exec(filename)[0]拿到从.开始匹配的字符串,也就是扩展名。如果不存在则返回undefined。
二、使用String中的split
if(string){
let lastIndex = string.lastIndexOf('.');
// let result = ['png', 'jpg', 'gif', 'jpeg'].includes(string.substring(lastIndex+1));
// re
var filePath = "file://upload/jb51.png";
//
获取
最后一个.的位置
var index= filePath.lastIndexOf(".");
//
获取
后缀
var ext = filePath.substr(index+1);
//输出结果
console.log(ext);
效果图如下:
2、
文件
类型判断
我们得到
文件
后缀名
后,根据
后缀
即可判断
文件
的类型(
文件
格式)。比如我们需要判断一个
文件
是否是图片格式,首先定义一个判断
var filename=file;
var index1=filename.lastIndexOf(".");
var index2=filename.length;alert(index2);
var type...
在
javascript
中
获取
文件
后缀名
我们常用fileName.substring或fileName.split或str.lastIndexOf三种方法,下面分别介绍一下:
@在这里插入代码片TOC
欢迎使用Markdown编辑器
var fileName = “http://www.111cn.net/sys/nginx/62888.htm”;
var fileExtension = f...
function getFileType(filePath){
var startIndex = filePath.lastIndexOf(".");
if(startIndex != -1)
return filePath.substring(startIndex+1, filePath.length).toLowerCase();
else return "";
注意:一定要...
String filename = "example.txt";
Pattern pattern = Pattern.compile("\\.(\\w+)$");
Matcher matcher = pattern.matcher(filename);
if (matcher.find()) {
String extension = matcher.group(1);
System.out.println("File extension: " + extension);
在上述代码中,使用了正则表达式来匹配
文件名
的
后缀名
,其中 "\\.(\\w+)$" 表示以 "." 开头,后面跟着一个或多个字母数字字符,最后以字符串结尾的模式。使用 Matcher 类的 find() 方法来匹配
文件名
,如果匹配成功,则使用 group() 方法
获取
后缀名
。