根据文件后缀名利用正则表达式区分文件格式

本文介绍了在项目中如何使用正则表达式来验证上传文件的格式,确保其为图片格式,并且不区分后缀名的大小写。通过获取文件后缀名并利用正则表达式如/.(jpg|jpeg|gif|bmp|png)$/i进行匹配,实现简单的文件类型校验。这种方法适用于快速检查上传的文件是否符合要求,避免非图片文件的误传。

上传功能在项目中经常用到,一般上传时要验证一下文件的格式是不是我们需要的。验证方法很多,而正则表达式经常会被用到。

比如我要上传的文件必须是图片格式,而且后缀名不区分大小写,可以这样写:

// 根据名称获取文件后缀名
const index = fileName.lastIndexOf('.') // 根据文件名找到最后一个‘.’的索引
const suffixName = fileName.substr(index) // 根据索引截取,得到后缀名

/**
  正则表达式
  $:表示以前面的字母结尾
  i:表示忽略大小写
*/
const verifyImg = /.(jpg|jpeg|gif|bmp|png)$/i

// 验证
if(verifyImg.test(suffixName)){ // 为真表示验证通过

}

正则表达式的test() 方法,接收一个字符串参数。如果输入的文本与模式匹配,则参数返回 true ,否则返回 false 。这个方法适用于只想测试模式是否匹配,而不需要实际匹配内容的情况。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值