前情提要:
前文鏈接:
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不言謝