js进行字符串的字节判断和截取
来源:互联网 发布:ubuntu 14.04 ant 编辑:程序博客网 时间:2024/06/07 23:32
需求:
编写一个截取字符串的函数,输入为一个字符串和一个字节数,输出为按字节截取的字符串。
思路:
一、字节数判断
1、定义一个变量记录字符串字节数
2、利用正则筛选汉字和大写字母
3、将字符串转为数组进行遍历查询,并且将各个字符的字节数进行累加
4、返回字符串的字节数
二、字符串按照字节数截取
思路基本和判断一样,增加一个判断长度截取,并且返回新的字符串即可。
//字节判断(中文2,英文小写1,大写1.5)
function fontLenth(thisVal){
var thisVLength=0;
var thisA=thisVal.split('');
var rep=/[^\x00-\xff]/;
var repABC=/^[A-Z]+$/;
for(var i=0;i<thisA.length;i++){
if(rep.test(thisA[i])){
thisVLength+=2;
}else if(repABC.test(thisA[i])){
thisVLength+=1.5;
}else{
thisVLength++;
}
}
return thisVLength;
}
//字节截取(中文2,英文小写1,大写1.5)
function fontCut(thisVal,thisCutLength){
var thisVlength=0;
var thisB=[];
var thisA=thisVal.split('');
var rep=/[^\x00-\xff]/;
var repABC=/^[A-Z]+$/;
for(var i=0;i<thisA.length;i++){
if(rep.test(thisA[i])){
thisVlength+=2;
}else if(repABC.test(thisA[i])){
thisVlength+=1.5;
}else{
thisVlength++;
}
if(thisVlength>thisCutLength){
return thisB.join('');
}else{
thisB.push(thisA[i]);
}
}
return thisB.join('');
}
- js进行字符串的字节判断和截取
- JS正确截取单字节和双字节混和字符串的方法
- js正确截取单字节和双字节混和字符串的方法
- js从字符串中截取10个字节的长度
- js截取前n个字节的字符串
- 字符串的按字节截取
- 按字节截取的字符串
- 按字节截取的字符串
- js中根据字节截取字符串
- js中按字节截取字符串
- 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串
- 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。
- 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。
- 字符串的用法(字符串的截取和判断)
- 输入为一个字符串和字节数,输出为按字节截取的字符串
- 输入为一个字符串和字节数,输出为按字节截取的字符串
- js 判断 checked 是否选中 js 删除指定字符串 ,js 截取指定位图的字符串
- JS~字符串长度判断,超出进行自动截取(支持中文)
- Linux工作队列实现机制
- c#之接口练习
- 计算机网络之动态主机配置协议DHCP
- _BSMachError: port 9f03; (os/kern) invalid name (0xf) "Unable to deallocate send right"
- 二分查找
- js进行字符串的字节判断和截取
- 笨方法学习Python-习题40: 字典, 可爱的字典
- Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line #17: invalid drawable tag vec
- Android的内存管理
- 计算机网络之套接字SOCKET
- LINUX学习笔记(十四)
- java中try 与catch的使用
- 浅谈Spring的面向接口编程
- 解决sqoop java.util.NoSuchElementException