分析
想要截取文件名和文件后缀名,我们需要分析文件fullName的特点
一般文件的格式为 文件名.文件后缀名,‘.’ 符号在文件名和后缀名之间起到分隔的作用。
使用通过正则表达式匹配文件fullName的方式,在通过截取字符串,从而实现文件名后文件后缀名的截取。
正则表达式
1.文件后缀名一般为大小写英文字母 [A-Za-z]
2.后缀名英文字符的个数一般至少大于1,无特别上限 {1,}
3.匹配需要从字符串末尾开始 $
4.需要匹配 ‘.’ 即为 \.
/\.{1}[A-Za-z]{1,}$/
实际测试
拥有正则表达式后我们可以实际测试一下
var testStr="test.pdf";
var pattern=/\.{1}[A-Za-z]{1,}$/;
var result=pattern.exec(testStr);
console.log(result[0]);
console.log(result.index); //index 属性声明的是匹配文本的第一个字符在原来字符串里面的位置
//output:
".pdf"
4
截取文件名和文件后缀名
我们使用slice()函数截取字符串的一部分具体 slice()使用方式
var fileFullName="test.PDF";
var pattern=/\.{1}[A-Za-z]{1,}$/;
var fileName="";
var fileExtension="";
if(pattern.exec(fileFullName)!=null){
fileName = fileFullName.slice(0, pattern.exec(fileFullName).index);
fileExtension =fileFullName.slice(pattern.exec(fileFullName.index,fileFullName.length))
}
console.log(fileName);
console.log(fileExtension);
//output:
"test"
".PDF"