jQuery獲取上傳文件的名稱的正則表達(dá)式
方法一:
$('input[type="file"]').on('change', function() {
var reg = /[^\\\/]*[\\\/]+/g; //匹配文件的名稱和后綴的正則表達(dá)式
var name = $(this).val().replace(reg, '');
var postfix = /\.[^\.]+/.exec(name);//獲取文件的后綴
var text =name.substr(0,postfix['index']);//獲取沒有后綴的名稱
// 檢測(cè)上傳文件
});
方法二:
以下只是個(gè)例子,變量file可以是任意類似于網(wǎng)絡(luò)路徑的字符串,這個(gè)例子是獲得name=file的對(duì)象傳過來的文件地址
var file=jQuery("input[name='file']").val()
var filename=file.replace(/.*(\/|\\)/, "");
var fileExt=(/[.]/.exec(filename)) ? /[^.]+$/.exec(filename.toLowerCase()) : '';
filename得到文件名
fileExt得到后綴名
方法三:
網(wǎng)上能找到的正則表達(dá)式大多都沒有考慮中文文件夾和中文文件名的情況。
后來,自己動(dòng)手寫了一個(gè)。在走過了不少歪路后,我根據(jù)windows的命名規(guī)則(文件名中不能包含下列字符:/ / * ? | " < >),終于完成了一個(gè)自認(rèn)為比較完整的一個(gè)正則式:
(([a-zA-Z]:)|(//))((//)[^///*/?/|/:"<>]{1,255})+/.(([j,J][p,P][g,G])|([g,G][i,I][f,F]))
這個(gè)表達(dá)式是判斷上傳文件類型為jpg或gif格式的。自己測(cè)試過,無論文件夾和文件名是怎么樣命名的,只要能通過windows文件管理找到的,都能正確判斷。
以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
相關(guān)文章
jQuery控制div實(shí)現(xiàn)隨滾動(dòng)條滾動(dòng)效果
這篇文章主要介紹了jQuery控制div實(shí)現(xiàn)隨滾動(dòng)條滾動(dòng)效果,對(duì)比分析了兩種實(shí)現(xiàn)方法供大家參考選擇,需要的朋友可以參考下2016-06-06
JQuery頁(yè)面隨滾動(dòng)條動(dòng)態(tài)加載效果的簡(jiǎn)單實(shí)現(xiàn)(推薦)
下面小編就為大家?guī)硪黄狫Query頁(yè)面隨滾動(dòng)條動(dòng)態(tài)加載效果的簡(jiǎn)單實(shí)現(xiàn)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02
checkbox批量選中,獲取選中項(xiàng)的值的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)硪黄猚heckbox批量選中,獲取選中項(xiàng)的值的簡(jiǎn)單實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-06-06
實(shí)例講解jQuery中對(duì)事件的命名空間的運(yùn)用
jQuery支持帶命名空間的事件,這樣就可以方便地對(duì)同一事件使用不同的監(jiān)聽器并進(jìn)行管理,接下來我們就以實(shí)例講解jQuery中對(duì)事件的命名空間的運(yùn)用2016-05-05
jQuery實(shí)現(xiàn)簡(jiǎn)單的滑動(dòng)導(dǎo)航代碼(移動(dòng)端)
這篇文章主要介紹了jQuery實(shí)現(xiàn)簡(jiǎn)單的滑動(dòng)導(dǎo)航代碼,適合用于移動(dòng)端。需要的朋友可以參考下2017-05-05
jquery數(shù)據(jù)驗(yàn)證插件(自制,簡(jiǎn)單,練手)實(shí)例代碼
最近項(xiàng)目中js數(shù)據(jù)驗(yàn)證比較多,為了統(tǒng)一風(fēng)格,移植復(fù)用,于是順手封裝了Jquery的插件2013-10-10
jQuery中select與datalist制作下拉菜單時(shí)的區(qū)別淺析
一般我們通常使用select制作下拉菜單,但是H5之后,datalist也可以充當(dāng)select的角色,而且兩者還有一點(diǎn)小的不同。具體區(qū)別詳解小編通過本文給簡(jiǎn)單介紹下2016-12-12

