JS 一些常用方法

1.

var reg = /^(\w|[\u4E00-\u9FA5])*$/;
if(arr=username.match(reg))
 
{
 ti
=1;
 
return ture;
}

else
{
 alert(
"用户名只允许为英文,数字和汉字的混合,\n请检查是否前后有空格或者其他符号");
 ti
=0;
 
return false;
}
 

2.利用正则表达式限制网页表单里的文本框输入内容:

用正则表达式限制只能输入中文:onkeyup
="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"

用正则表达式限制只能输入全角字符: onkeyup
="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"

用正则表达式限制只能输入数字:onkeyup
="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"

用正则表达式限制只能输入数字和英文:onkeyup
="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" 


<script> 
function check() 

if(!isNaN(document.all.form.str.value)) 

alert(
"数字"); 

}
 
</script> 
字母 
<script> 
function check() 

var str = /[_a-zA-Z]/
if(str.test(document.all.form.str.value)) 

alert(
"字母"); 
}
 
}
 
</script> 
<form name="form" action="" onsubmit="return check();"> 
<input type=text name=str> 
<input type=submit> 
<form> 

-------------------------------------------------------------------------------- 

/^[0-9a-zA-Z]+$/ 

-------------------------------------------------------------------------------- 

/*
* 一些常用的javascript函数(方法) 

* 为便于使用,均书写成String对象的方法 
* 把他保存为.js文件,可方便的扩展字符串对象的功能 

* 方法名 功 能 
* ----------- -------------------------------- 
* Trim 删除首位空格 
* Occurs 统计指定字符出现的次数 
* isDigit 检查是否由数字组成 
* isAlpha 检查是否由数字字母和下划线组成 
* isNumber 检查是否为数 
* lenb 返回字节数 
* isInChinese 检查是否包含汉字 
* isEmail 简单的email检查 
* isDate 简单的日期检查,成功返回日期对象 
* isInList 检查是否有列表中的字符字符 
* isInList 检查是否有列表中的字符字符 
*/
 
/*** 删除首尾空格 ***/ 
String.prototype.Trim 
= function() 
return this.replace(/(^\s*)|(\s*$)/g, ""); 
}
 
/*** 统计指定字符出现的次数 ***/ 
String.prototype.Occurs 
= function(ch) 
// var re = eval("/[^"+ch+"]/g"); 
//
 return this.replace(re, "").length; 
return this.split(ch).length-1
}
 
/*** 检查是否由数字组成 ***/ 
String.prototype.isDigit 
= function() 
var s = this.Trim(); 
return (s.replace(/\d/g, "").length == 0); 
}
 
/*** 检查是否由数字字母和下划线组成 ***/ 
String.prototype.isAlpha 
= function() 
return (this.replace(/\w/g, "").length == 0); 
}
 
/*** 检查是否为数 ***/ 
String.prototype.isNumber 
= function() 
var s = this.Trim(); 
return (s.search(/^[+-]?[0-9.]*$/>= 0); 
}
 

/*** 返回字节数 ***/ 
String.prototype.lenb 
= function() 
return this.replace(/[^\x00-\xff]/g,"**").length; 
}
 
/*** 检查是否包含汉字 ***/ 
String.prototype.isInChinese 
= function() 
return (this.length != this.replace(/[^\x00-\xff]/g,"**").length); 
}
 
/*** 简单的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); 
}
 
/*** 简单的日期检查,成功返回日期对象 ***/ 
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)) 
= re1.exec(this); 
return new Date(p[1],p[2],p[3]); 
}
 
if(re2.test(this)) 
= re2.exec(this); 
return new Date(p[3],p[1],p[2]); 
}
 
if(re3.test(this)) 
= re3.exec(this); 
return new Date(p[3],p[1],p[2]); 
}
 
return false
}
 
/*** 检查是否有列表中的字符字符 ***/ 
String.prototype.isInList 
= function(list) 
var re = eval("/["+list+"]/"); 
return re.test(this); 
}
 


//保留两位小数
       function numRound(f, c)
       
{
           
var t = Math.pow(10, c);
           
return Math.round(f * t) / t;
       }

From: http://www.cnblogs.com/ximingliang/archive/2006/07/20/455474.html
原文地址:https://www.cnblogs.com/yiki/p/798589.html