/**
* js截取字符串,中英文都能用
* @param str: 需要截取的字符串
* @param len: 需要截取的長(zhǎng)度
*/
function subString(str, len) {
var newLength = 0, newStr = '', singleChar;
var chineseRegex = /[^\x00-\xff]/g; //正則匹配
var strLength = str.replace(chineseRegex, "**").length; //獲取字符長(zhǎng)度
for(var i = 0; i < str.length; i++) {
singleChar = str.charAt(i); //返回指定位置的字符
if(singleChar.match(chineseRegex) != null) { //檢測(cè)是否為中文,是的話就算兩個(gè)字符
newLength += 2;
}else {
newLength++;
}
//字符長(zhǎng)度大于要截取的長(zhǎng)度就跳出循環(huán)
if(newLength > len) break;
newStr += singleChar;
}
if(strLength > len) { //字符長(zhǎng)度大于要截取的長(zhǎng)度就省略
newStr += "…";
}
return newStr;
}
字符串長(zhǎng)度截取
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
推薦閱讀更多精彩內(nèi)容
- swift2.0之后,對(duì)string的操作與1.0版本和OC差別很大,使用了Rang替換原來的NSRange,創(chuàng)建...
- 從位置1開始(0為第一位)也就是"取"開始截取5個(gè)長(zhǎng)度的字符 輸出結(jié)果 從位置1開始截取之后位置的所有字符 輸出結(jié)果
- 首先要了解中文字符有多種編碼及各種編碼的特征。假設(shè)n為要截取的字節(jié)數(shù)。
- 原文鏈接:《Advanced Swift》筆記:Swift字符串長(zhǎng)度 如上,同樣一個(gè)字符串,在String和NSS...
- 這輩子注定和考試結(jié)緣了,上學(xué)的時(shí)候因?yàn)榭荚嚦煽?jī)或歡喜,或悲傷。如今,作為教師的我又因?yàn)槠谥锌荚嚳嫉牟缓枚y過。想著...