JS中,正则表达式:match(/^(.*)(\.)(.{1,8})$/)[3]分析
前情提要:
前文链接:
JS验证上传的文件是否为音视频文件格式
页面中需要 判断上传文件的,结尾格式,为是否为音视频。需要写个正则表达式来截取,用户上传的文件,是否符合以下格式。
var arr = new Array("avi","wmv","mpg","mpeg","mov","rm","ram","swf","flv","mp4","mp3","wma","avi","rm","rmvb","flv","mpg","mkv")
用到了以下的正则表达式:
正则分析:
.match(/^(.*)(\.)(.{1,8})$/)[3]
大白话解释为:
找到所有匹配类似 包含.号,前面任意长度的字符,后面1到8个长度的字符,返回一个数组。
然后取数组长度[3],应该包括0,1,2,3 四位。
拆分解析:
1 |
^ |
2 |
.* |
3 |
\. |
4 |
.{1,8} |
5 |
$ |
开始的,前后的杠只是 JavaScript的界符,没有实际意义。
1、^ :表示匹配开始。
2、.* :匹配 .号 之前任意字符串开始(包括没有)。
3、\. :查找文件名中带有 .号 的位置,就需要对.号 进行转义。
即在其前面加一个 \,表示起来就是\.
4、.{1,8} :.号 后面取1-8个任意字符。
5、 $ : 表示匹配结束。
参考,正则表达式,基本语法:
by不言谢
by不言谢
不要和别人比,要赢得是自己。(ง •̀_•́)ง
本文来自博客园,作者:不言谢,转载请注明原文链接:https://www.cnblogs.com/byx1024/p/13345844.html