从url中获取文件名

比如 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);
};
posted @ 2024-09-23 15:41  丁少华  阅读(257)  评论(0)    收藏  举报