/String.prototype使用
//批量替换,比如:str.ReplaceAll([/a/g,/b/g,/c/g],["aaa","bbb","ccc"])
// 去掉字符两端的空白字符
String.prototype用于为某字符串对象新增方法,比如:
在javascript中有一方法replace,它是用于替换某字符串中第一个匹配的字符,如果我们想为它追加一个循环匹配所有字符的方法时,可以这样子:
String.prototype.replaceAll = function(oldStr, newStr) {
return this.replace(new RegExp(oldStr,"gm"),newStr);
return this.replace(new RegExp(oldStr,"gm"),newStr);
}
有了这一句以后,我们就可以用jquery类似这样子搞了:
var bodyString = $("body").html().replaceAll("张清云","只是个传说");
这样子,凡是在body中出现了"张清云"类似的字符,就会被替换为"只是个传说"了。
没有上面的定义的话,html().replaceAll(.....) 是执行不了的。因为没有replaceAll这个方法。
另外,上面的方法也不错,mark!
String.prototype.ReplaceAll=function (A,B) {
var C=this;
for(var i=0;i<A.length;i++) {
C=C.replace(A[i],B[i]);
};
return C;
};
// 去掉字符两端的空白字符
String.prototype.Trim=function () {
return this.replace(/(^[/t/n/r]*)|([/t/n/r]*$)/g,'');
};
// 去掉字符左边的空白字符
String.prototype.LTrim=function () {
return this.replace(/^[/t/n/r]/g,'');
};
// 去掉字符右边的空白字符
String.prototype.RTrim=function () {
return this.replace(/[/t/n/r]*$/g,'');
};
// 返回字符的长度,一个中文算2个
String.prototype.ChineseLength=function()
{
return this.replace(/[^/x00-/xff]/g,"**").length;
};
// 判断字符串是否以指定的字符串结束
String.prototype.EndsWith=function (A,B) {
var C=this.length;
var D=A.length;
if(D>C)return false;
if(B) {
var E=new RegExp(A+'$','i');
return E.test(this);
}else return (D==0||this.substr(C-D,D)==A);
};
// 判断字符串是否以指定的字符串开始
String.prototype.StartsWith = function(str)
{
return this.substr(0, str.length) == str;
};
// 字符串从哪开始多长字符去掉
String.prototype.Remove=function (A,B) {
var s='';
if(A>0)s=this.substring(0,A);
if(A+B<this.length)s+=this.substring(A+B,this.length);
return s;
};
// 从右边截取指定长度的子串
String.prototype.Right=function(n){
var str=this.slice(this.length-n);
return str;
}