正則取得字串的長度 並根據位元組擷取字串
阿新 • • 發佈:2019-02-15
/** *根據byte擷取字串 len:擷取長度 */ String.prototype.substrb = function(len){ var str1; if(this.lengthb() <= len){ return this; } for(i = len/2;i < this.length;i ++){ str1 = this.substr(0,i); if(str1.lengthb() == len){ return str1; }else if(str1.lengthb() > len){ return this.substr(0,i-1); }else { //不可以和 【if (str1.lengthb() == len) 】合併 此防止前面均為半形,後面為全形情況 if(str1.lengthb()==len-1){ return str1; } } } } /** * 根據byte取得字串長度 */ String.prototype.lengthb = function(){ return this.replace(/[^\x00-\xff]/g, '**').length; }