首页 > 其他分享 >从url中获取文件名

从url中获取文件名

时间:2024-09-23 15:47:29浏览次数:6  
标签:const 文件名 url fileName 获取 export match

比如 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

相关文章

  • url编码与解码
    1概述最近写sky-takeout,将其中的oss换成了minio,本来万事顺利,但是测试的时候发现删除功能无法生效,对象文件一直好好的保存着,怎么删都删不掉!一开始我一直以为是删除权限的问题,但是网上一直搜索,总是得不到答案。最后才发现,原来万恶之源是URL编码!我的数据库中存储的是文件预览的路......
  • dayjs 获取本周、上一周、下一周的第一天和最后一天的日期(周一&周日)
    npmidayjs--saveimportdayjsfrom'dayjs';/***获取日期的函数*/updateWeek(weekOffset){consttoday=dayjs()consttimestamp=Math.round(newDate())constdate=newDate(timestamp)constweekday=date.getDay()......
  • python获取kafka队列长度
    #pipinstallkafka-pythonfromkafkaimportKafkaConsumerfromkafka.structsimportTopicPartitiondefget_queue_length(topic_list,kafka_host,kafka_group):partition_list=[TopicPartition(it[1],0)foritintopic_list]consumer=KafkaCons......
  • C# base64转pdf + 上传至指定url
    base64topdf1usingSystem;2usingSystem.Collections.Generic;3usingSystem.IO;4usingSystem.Linq;5usingSystem.Text;6usingSystem.Threading.Tasks;78namespaceHS.Common.Helper9{10publicclassPdfHelper11{......
  • 为何我安装完提示这个报错?:Array and string offset access syntax with curly braces
    错误信息 Arrayandstringoffsetaccesssyntaxwithcurlybracesisdeprecated 表明你在使用的PHP版本较高,而你的程序代码中使用了一些在较新版本中已弃用的语法。具体来说,这是PHP7.4及以上版本对数组和字符串偏移量访问语法 {} 的弃用警告。解决方案1.降低PHP......
  • Js中获取鼠标中的某一个点的位置以及getBoundingClientRect
    getBoundingClientRect() 是一个用于获取元素位置和尺寸信息的方法。它返回一个DOMRect对象,其提供了元素的大小及其相对于视口的位置,其中包含了以下属性: x:元素左边界相对于视口的x坐标。y:元素上边界相对于视口的y坐标。width:元素的宽度。height:元素的高度。top:元素......
  • EyouCms去除URL中的index.php
    为了去掉URL上的 index.php 字符,可以根据不同的服务器环境进行相应的配置。以下是针对Nginx、Apache和IIS服务器的具体配置方法。1.Nginx服务器主目录配置在原有的Nginx重写文件里新增以下代码片段:location/{if(!-e$request_filename){rewr......
  • Java反序列化调用链分析系列 | URLDNS链
    URLDNS链URLDNS链是java通过反序列化发起dns请求的利用链。一般用于测试反序列化漏洞。该链比较简单,利用链也比较短。其中入口类为HashMap,执行类为URLStreamHandler的hashCode()方法。整个调用链如下:HashMap.readObject()HashMap.putVal()HashMap.hash()URL.hashCode()......
  • 《死亡细胞》最新风灵月影指南:无限细胞获取、道具瞬间冷却
    《死亡细胞》是一款硬核动作冒险游戏,为了帮助玩家更好地体验游戏乐趣或克服难关,风灵月影推出了一系列修改器,其中最新版本为v0.91七项修改器。本指南旨在详细介绍使用方法,确保每位玩家都能安全、有效地利用这些辅助功能。下载与安装访问信誉良好的网站,如游侠网、3DM游戏网或......
  • python获取同花顺人气数据代码可用股票ETF可转债
    1.获取同花顺人气数据代码可用股票ETF可转债importpandasaspdimportjsonimportrequestsclassths_rq:def__init__(self):'''同花顺人气'''passdefget_headers(self):'''请求......