亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

jQuery獲取上傳文件的名稱(chēng)的正則表達(dá)式

 更新時(shí)間:2015年05月21日 10:04:59   投稿:hebedich  
在Web開(kāi)發(fā)中,經(jīng)常會(huì)涉及到文件上傳。文件上傳時(shí)通常都要驗(yàn)證文件的有效性,這個(gè)通常就要用正則表達(dá)式來(lái)判斷。

方法一:

$('input[type="file"]').on('change', function() {
      var reg = /[^\\\/]*[\\\/]+/g; //匹配文件的名稱(chēng)和后綴的正則表達(dá)式
      var name = $(this).val().replace(reg, '');
      var postfix = /\.[^\.]+/.exec(name);//獲取文件的后綴
      var text =name.substr(0,postfix['index']);//獲取沒(méi)有后綴的名稱(chēng)
      // 檢測(cè)上傳文件
    });

方法二:

以下只是個(gè)例子,變量file可以是任意類(lèi)似于網(wǎng)絡(luò)路徑的字符串,這個(gè)例子是獲得name=file的對(duì)象傳過(guò)來(lái)的文件地址

復(fù)制代碼 代碼如下:

var file=jQuery("input[name='file']").val()
var filename=file.replace(/.*(\/|\\)/, "");
var fileExt=(/[.]/.exec(filename)) ? /[^.]+$/.exec(filename.toLowerCase()) : '';

filename得到文件名

fileExt得到后綴名

方法三:

網(wǎng)上能找到的正則表達(dá)式大多都沒(méi)有考慮中文文件夾和中文文件名的情況。

后來(lái),自己動(dòng)手寫(xiě)了一個(gè)。在走過(guò)了不少歪路后,我根據(jù)windows的命名規(guī)則(文件名中不能包含下列字符:/ / * ? | " < >),終于完成了一個(gè)自認(rèn)為比較完整的一個(gè)正則式:

復(fù)制代碼 代碼如下:

(([a-zA-Z]:)|(//))((//)[^///*/?/|/:"<>]{1,255})+/.(([j,J][p,P][g,G])|([g,G][i,I][f,F]))

這個(gè)表達(dá)式是判斷上傳文件類(lèi)型為jpg或gif格式的。自己測(cè)試過(guò),無(wú)論文件夾和文件名是怎么樣命名的,只要能通過(guò)windows文件管理找到的,都能正確判斷。

以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。

相關(guān)文章

最新評(píng)論