byteCut (str, n) {
let len = 0;
let tmpStr = ‘’;
for (let i = 0; i < str.length; i++) {
if (/[\u4e00-\u9fa5]/.test(str[i])) {
len += 3;
} else {
len += 1;
}
if (len > n) {
tmpStr += str[i]+’…’;
break;
} else {
tmpStr += str[i];
}
}
return tmpStr;
},
“\u4e00”和“\u9fa5”是baiunicode编码,并且正好是中文编码的开du始和结束的两个值,所以这个zhi正则表达式可以用来判dao断字符串中是否包含中文。正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。