方法一:
$('input[type="file"]').on('change', function() { var reg = /[^////]*[////]+/g; //匹配文件的名稱和后綴的正則表達式 var name = $(this).val().replace(reg, ''); var postfix = //.[^/.]+/.exec(name);//獲取文件的后綴 var text =name.substr(0,postfix['index']);//獲取沒有后綴的名稱 // 檢測上傳文件 });
方法二:
以下只是個例子,變量file可以是任意類似于網絡路徑的字符串,這個例子是獲得name=file的對象傳過來的文件地址
filename得到文件名
fileExt得到后綴名
方法三:
網上能找到的正則表達式大多都沒有考慮中文文件夾和中文文件名的情況。
后來,自己動手寫了一個。在走過了不少歪路后,我根據windows的命名規則(文件名中不能包含下列字符:/ / * ? | " < >),終于完成了一個自認為比較完整的一個正則式:
這個表達式是判斷上傳文件類型為jpg或gif格式的。自己測試過,無論文件夾和文件名是怎么樣命名的,只要能通過windows文件管理找到的,都能正確判斷。
以上所述就是本文的全部內容了,希望大家能夠喜歡。
新聞熱點
疑難解答