如何驗證Excel文件爲Excel文件正則表達式驗證碼上傳的jQuery
我的JQuery
jQuery("#excel").validate({
expression: "if (VAL.match(/^([a-z]\w*)\.(xls[mx]?)$/) && VAL) return true; else return false;",
message: "Please upload valid excel file"
});
如何驗證Excel文件爲Excel文件正則表達式驗證碼上傳的jQuery
我的JQuery
jQuery("#excel").validate({
expression: "if (VAL.match(/^([a-z]\w*)\.(xls[mx]?)$/) && VAL) return true; else return false;",
message: "Please upload valid excel file"
});
你需要躲避點。
^([a-z]\w*)(\.xlsx|\.xlsm|\.xls)$
OR
^([a-z]\w*)\.(xls[mx]?)$
[mx]?
可選m
或x
使用,如果你想允許任何字符其間^([a-z].*)\.(xls[mx]?)$
這對'abc.def.xls'和包含名稱空間的任何文件都失敗。 – mudasobwa
然後這個'^([a-z]。*)\。(xls [mx]?)$' –
爲什麼downvote? –
首先,這個正則表達式匹配,你應該改變的因爲您不想在無效的上執行表達式,所以在表達式中排序:
VAL && VAL.match(/^([a-z]\w*)(.xlsx|.xlsm|.xls)
二次,任何\w
符號如起始文件名符號,以及,作爲點和空間(和,可能的話,一些其他符號。)在正則表達式點應該被轉義完全有效的。而且,最後但並非最不重要,你可以想壓縮xls*
S:
/^([\w\s.]*)\.xls[xm]?$/
如果文件名包含任何特殊字符,它將不起作用。 –
真的嗎?你認爲在我的答案下複製我的論點是幫助OP的正確方法嗎? – mudasobwa
[here](http://stackoverflow.com/questions/27654466/regex-validation-code-for-excel-file-upload-jquery#comment43725413_27654473)。如果您有任何疑問,請向操作人員詢問。他沒有提及文件名中的空格或點。 –
不允許在Excel文件名的數字? – 1252748
@thomas,yes名稱號碼和特殊字符。 –