//String.prototype使用 //批量替换,比如:str.ReplaceAll([/a/g,/b/g,/c/g],["aaa","bbb","ccc"]) 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类型的方法:
<mce:script language=javascript><!-- //全角空格为12288,半角空格为32 //其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248 //document.write((65281).toString(16)+"----"+ //(65374).toString(16)+"----"+(12288).toString(16)); String.prototype.dbc2sbc = function () { return this.replace(/[/uff01-/uff5e]/g, function(a){ return String.fromCharCode(a.charCodeAt(0)-65248); }).replace(//u3000/g," "); } document.write("ABC 123,我们都是好朋友".dbc2sbc()); // --></mce:script>
这里说明下这个代码
this.replace(/[/uff00-/uff5e]/g),......先看这一半 其实是把全角在65281-65374之间的换为半角
之后的函数是function返回的字符
在其中的函数也把空格符 也就是全角的空格是/u3000 换成空格