前言:
此刻你们对“js判断字符串的字节长度”都比较关心,小伙伴们都想要分析一些“js判断字符串的字节长度”的相关资讯。那么小编同时在网摘上搜集了一些关于“js判断字符串的字节长度””的相关资讯,希望你们能喜欢,朋友们一起来学习一下吧!1、在字符串末尾追加字符串
/** 在字符串末尾追加字符串 **/String.prototype.append = function (str) {return this.concat(str);}
2、删除指定索引位置的字符, 索引无效将不删除任何字符
/** 删除指定索引位置的字符,索引无效将不删除任何字符 **/String.prototype.deleteCharAt = function (index) {if (index < 0 || index >= this.length) {return this.valueOf();}else if (index == 0) {return this.substring(1, this.length);}else if (index == this.length - 1) {return this.substring(0, this.length - 1);}else {return this.substring(0, index) + this.substring(index + 1);}}
3、删除指定索引区间的字符串
/** 删除指定索引区间的字符串 **/String.prototype.deleteString = function (start, end) {if (start == end) {return this.deleteCharAt(start);}else {if (start > end) {var temp = start;start = end;end = temp;}if (start < 0) {start = 0;}if (end > this.length - 1) {end = this.length - 1;}return this.substring(0, start) + this.substring(end +1 , this.length);}}
4、检查字符串是否以subStr结尾
/** 检查字符串是否以subStr结尾 **/String.prototype.endWith = function (subStr) {if (subStr.length > this.length) {return false;}else {return (this.lastIndexOf(subStr) == (this.length - subStr.length)) ? true : false;}}
6、比较两个字符串是否相等
/** 比较两个字符串是否相等,也可以直接用 == 进行比较 **/String.prototype.equal = function (str) {if (this.length != str.length) {return false;}else {for (var i = 0; i < this.length; i++) {if (this.charAt(i) != str.charAt(i)) {return false;}}return true;}}
7、比较两个字符串是否相等,不区分大小写
/** 比较两个字符串是否相等,不区分大小写 **/String.prototype.equalIgnoreCase = function (str) {var temp1 = this.toLowerCase();var temp2 = str.toLowerCase();return temp1.equal(temp2);}
8、将指定的字符串插入到指定的位置后面
/** 将指定的字符串插入到指定的位置后面,索引无效将直接追加到字符串的末尾 **/String.prototype.insert = function (ofset, subStr) {if (ofset < 0 || ofset >= this.length - 1) {return this.append(subStr);}return this.substring(0, ofset + 1) + subStr + this.substring(ofset + 1);}
9、判断字符串是否数字串
/** 判断字符串是否数字串 **/String.prototype.isAllNumber = function () {for (var i = 0; i < this.length; i++) {if (this.charAt(i) < '0' || this.charAt(i) > '9') {return false;}}return true;}
10、将字符串反序排列
/** 将字符串反序排列 **/String.prototype.reserve = function () {var temp = "";for (var i = this.length - 1; i >= 0; i--) {temp = temp.concat(this.charAt(i));}return temp;}
11、将指定的位置的字符设置为另外指定的字符或字符串
/** 将指定的位置的字符设置为另外指定的字符或字符串.索引无效将直接返回不做任何处理 **/String.prototype.setCharAt = function (index, subStr) {if (index < 0 || index > this.length - 1) {return this.valueOf();}return this.substring(0, index) + subStr + this.substring(index+1);}
12、检查字符串是否以subStr开头
/** 检查字符串是否以subStr开头 **/String.prototype.startWith = function (subStr) {if (subStr.length > this.length) {return false;}return (this.indexOf(subStr) == 0) ? true : false;}
13、计算长度
/** 计算长度,每个汉字占两个长度,英文字符每个占一个长度 **/String.prototype.charLength = function () {var temp = 0;for (var i = 0; i < this.length; i++) {if (this.charCodeAt(i) > 255) {temp += 2;}else {temp += 1;}}return temp;}String.prototype.charLengthReg = function () {return this.replace(/[^\x00-\xff]/g, "**").length;}
14、去掉首尾空格
/** 去掉首尾空格 **/String.prototype.trim = function () {return this.replace(/(^\s*)|(\s*$)/g, "");}
15、测试是否是数字
/** 测试是否是数字 **/String.prototype.isNumeric = function () {var tmpFloat = parseFloat(this);if (isNaN(tmpFloat))return false;var tmpLen = this.length - tmpFloat.toString().length;return tmpFloat + "0".Repeat(tmpLen) == this;}
16、测试是否是整数
/** 测试是否是整数 **/String.prototype.isInt = function () {if (this == "NaN")return false;return this == parseInt(this).toString();}
17、获取N个相同的字符串
/** 获取N个相同的字符串 **/String.prototype.Repeat = function (num) {var tmpArr = [];for (var i = 0; i < num; i++) tmpArr.push(this);return tmpArr.join("");}
18、合并多个空白为一个空白
/** 合并多个空白为一个空白 **/String.prototype.resetBlank = function () {return this.replace(/s+/g, " ");}
19、除去左边空白
/** 除去左边空白 **/String.prototype.LTrim = function () {return this.replace(/^s+/g, "");}
20、除去右边空白
/** 除去右边空白 **/String.prototype.RTrim = function () {return this.replace(/s+$/g, "");}
21、除去两边空白
/** 除去两边空白 **/String.prototype.trim = function () {return this.replace(/(^s+)|(s+$)/g, "");}
22、保留数字
/** 保留数字 **/String.prototype.getNum = function () {return this.replace(/[^d]/g, "");}
23、保留字母
/** 保留字母 **/String.prototype.getEn = function () {return this.replace(/[^A-Za-z]/g, "");}
24、保留中文
/** 保留中文 **/String.prototype.getCn = function () {return this.replace(/[^u4e00-u9fa5uf900-ufa2d]/g, "");}
25、得到字节长度
/** 得到字节长度 **/String.prototype.getRealLength = function () {return this.replace(/[^x00-xff]/g, "--").length;}
26、从左截取指定长度的字串
/** 从左截取指定长度的字串 **/String.prototype.left = function (n) {return this.slice(0, n);}
27、从右截取指定长度的字串
/** 从右截取指定长度的字串 **/String.prototype.right = function (n) {return this.slice(this.length - n);}
28、删除首尾空格
/*** 删除首尾空格 ***/String.prototype.Trim = function() {return this.replace(/(^\s*)|(\s*$)/g, "");}
29、统计指定字符出现的次数
/*** 统计指定字符出现的次数 ***/String.prototype.Occurs = function(ch) {// var re = eval("/[^"+ch+"]/g");// return this.replace(re, "").length;return this.split(ch).length-1;}
30、检查是否由数字组成
/*** 检查是否由数字组成 ***/String.prototype.isDigit = function() {var s = this.Trim();return (s.replace(/\d/g, "").length == 0);}
31、检查是否由数字字母和下划线组成
/*** 检查是否由数字字母和下划线组成 ***/String.prototype.isAlpha = function() {return (this.replace(/\w/g, "").length == 0);}
32、检查是否为数
/*** 检查是否为数 ***/String.prototype.isNumber = function() {var s = this.Trim();return (s.search(/^[+-]?[0-9.]*$/) >= 0);}
33、返回字节数
/*** 返回字节数 ***/String.prototype.lenb = function() {return this.replace(/[^\x00-\xff]/g,"**").length;}
34、检查是否包含汉字
/*** 检查是否包含汉字 ***/String.prototype.isInChinese = function() {return (this.length != this.replace(/[^\x00-\xff]/g,"**").length);}
35、简单的email检查
/*** 简单的email检查 ***/String.prototype.isEmail = function() { var strr;var mail = this; var re = /(\w+@\w+\.\w+)(\.{0,1}\w*)(\.{0,1}\w*)/i; re.exec(mail); if(RegExp.$3!="" && RegExp.$3!="." && RegExp.$2!=".")strr = RegExp.$1+RegExp.$2+RegExp.$3; else if(RegExp.$2!="" && RegExp.$2!=".")strr = RegExp.$1+RegExp.$2; else strr = RegExp.$1; return (strr==mail);}
36、简单的日期检查,成功返回日期对象
/*** 简单的日期检查,成功返回日期对象 ***/String.prototype.isDate = function() {var p;var re1 = /(\d{4})[年./-](\d{1,2})[月./-](\d{1,2})[日]?$/;var re2 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{2})[年]?$/;var re3 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{4})[年]?$/;if(re1.test(this)) {p = re1.exec(this);return new Date(p[1],p[2],p[3]);}if(re2.test(this)) {p = re2.exec(this);return new Date(p[3],p[1],p[2]);}if(re3.test(this)) {p = re3.exec(this);return new Date(p[3],p[1],p[2]);}return false;}
37、检查是否有列表中的字符字符
/*** 检查是否有列表中的字符字符 ***/String.prototype.isInList = function(list) {var re = eval("/["+list+"]/");return re.test(this);}
38、合并多个空白为一个空白
// 合并多个空白为一个空白String.prototype.ResetBlank = function() {var regEx = /\s+/g;return this.replace(regEx, ' ');};
39、String转化为Number
// String转化为NumberString.prototype.ToInt = function() {return isNaN(parseInt(this)) ? this.toString() : parseInt(this);};
40、得到字节长度
// 得到字节长度String.prototype.GetLen = function() {var regEx = /^[\u4e00-\u9fa5\uf900-\ufa2d]+$/;if (regEx.test(this)) {return this.length * 2;} else {var oMatches = this.match(/[\x00-\xff]/g);var oLength = this.length * 2 - oMatches.length;return oLength;}};
41、获取文件全名
// 获取文件全名String.prototype.GetFileName = function() {var regEx = /^.*\/([^\/\?]*).*$/;return this.replace(regEx, '$1');};
42、获取文件扩展名
// 获取文件扩展名String.prototype.GetExtensionName = function() {var regEx = /^.*\/[^\/]*(\.[^\.\?]*).*$/;return this.replace(regEx, '$1');};
43、格式化字符串
String.prototype.Format = function() {if (arguments.length == 0) {return '';}if (arguments.length == 1) {return arguments[0];}var reg = /{(\d+)?}/g;var args = arguments;var result = arguments[0].replace(reg, function($0, $1) {return args[parseInt($1) + 1];});return result;};