比如 https://abc.com/files/xx.zip,或许xx
// 文件名转为小驼峰
export const kebabCase_to_camelCase = (fileName) => {
// 转换为小写,并用正则表达式替换每个分隔符后的字符为大写(除非它是字符串的第一个字符)
const newfileName = fileName
.toLowerCase() // 先转换为小写
.replace(/[-_\s]+(.)?/g, (match, p1) => (p1 ? p1.toUpperCase() : ""))
.replace(/^./, (str) => str.toLowerCase()); // 转换为小驼峰
return newfileName;
};
// 从url中获取文件名
export const getFileNameFromUrl = (url) => {
const match = url.match(/([^/]+)\.([^/]+)?$/); // 使用正则表达式匹配文件名(不包括扩展名)
let fileName;
if (match && match[1]) {
fileName = match[1];
}
return fileName;
};
// 上边的合体
export const getPerfectFnameFromUrl = (url) => {
const res = getFileNameFromUrl(url);
return kebabCase_to_camelCase(res);
};
标签:const,文件名,url,fileName,获取,export,match
From: https://www.cnblogs.com/dingshaohua/p/18427159