javascript - 關于正則的一個小問題,求解
問題描述
現在我有一個需求,就是 比如let a = ’asdadaasd.jpg’||’中文.png’;2.我現在需要截取.jpg||.png||.gif||.jpeg 前面8位+’...’.png
let a = ’asdasdqweqweqwadsdasd.png’;let reg = /正則/; let strSub =>(filename){ xxx return filename } // 輸出的 filename 為 asdasdqweq....png;
問題解答
回答1:練練手,這種不建議用正則
正則法---code
let testStr=’asdasdqweqweqwadsdasd.png’;let reg=/(w{8})S+([.](?:png|jpeg|gif|jpg))/;let newStr=testStr.replace(reg,function(match,p1,p2,offset,string){ return p1+p2; });console.log(newStr)
這種實際用截取字符串最OK了 code:
let testStr=’asdasdqweqweqwadsdasd.png’;let index=testStr.lastIndexOf('.');let newStr=testStr.substr(0,8)+testStr.substr(index,testStr.length-index);console.log(newStr)
相關文章:
