JavaScript 中的正则表达式(推荐)
正则表达式的大致匹配过程是:依次拿出表达式和文本中的字符比较,如果每一个字符都能匹配,则匹配成功;一旦有匹配不成功的字符则匹配失败。
正则表达式通常用于在文本中查找匹配的字符串。Python里数量词默认是贪婪的(在少数语言里也可能是默认非贪婪),总是尝试匹配尽可能多的字符;非贪婪的则相反,总是尝试匹配尽可能少的字符。例如:正则表达式"ab*"如果用于查找"abbbc",将找到"abbb"。而如果使用非贪婪的数量词"ab*?",将找到"a"。
varpageIndex=document.getElementById("textfield").value;
if(!/^[0-9]+$/.test(pageIndex)){
alert("请输入正整数");
returnfalse;
}else{
alert("输入的是正整数");
}
/判断输入内容是否为空
functionIsNull(){
varstr=document.getElementById('str').value.trim();
if(str.length==0){
alert('对不起,文本框不能为空或者为空格!');//请将“文本框”改成你需要验证的属性名称!
}
}
//判断日期类型是否为YYYY-MM-DD格式的类型
functionIsDate(){
varstr=document.getElementById('str').value.trim();
if(str.length!=0){
varreg=/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/;
varr=str.match(reg);
if(r==null)
alert('对不起,您输入的日期格式不正确!');//请将“日期”改成你需要验证的属性名称!
}
}
//判断日期类型是否为YYYY-MM-DDhh:mm:ss格式的类型
functionIsDateTime(){
varstr=document.getElementById('str').value.trim();
if(str.length!=0){
varreg=/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})(\d{1,2}):(\d{1,2}):(\d{1,2})$/;
varr=str.match(reg);
if(r==null)
alert('对不起,您输入的日期格式不正确!');//请将“日期”改成你需要验证的属性名称!
}
}
//判断日期类型是否为hh:mm:ss格式的类型
functionIsTime()
{
varstr=document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^((20|21|22|23|[0-1]\d)\:[0-5][0-9])(\:[0-5][0-9])?$/
if(!reg.test(str)){
alert("对不起,您输入的日期格式不正确!");//请将“日期”改成你需要验证的属性名称!
}
}
}
//判断输入的字符是否为英文字母
functionIsLetter()
{
varstr=document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[a-zA-Z]+$/;
if(!reg.test(str)){
alert("对不起,您输入的英文字母类型格式不正确!");//请将“英文字母类型”改成你需要验证的属性名称!
}
}
}
//判断输入的字符是否为整数
functionIsInteger()
{
varstr=document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[-+]?\d*$/;
if(!reg.test(str)){
alert("对不起,您输入的整数类型格式不正确!");//请将“整数类型”要换成你要验证的那个属性名称!
}
}
}
//判断输入的字符是否为双精度
functionIsDouble(val)
{
varstr=document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[-\+]?\d+(\.\d+)?$/;
if(!reg.test(str)){
alert("对不起,您输入的双精度类型格式不正确!");//请将“双精度类型”要换成你要验证的那个属性名称!
}
}
}
//判断输入的字符是否为:a-z,A-Z,0-9
functionIsString()
{
varstr=document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[a-zA-Z0-9_]+$/;
if(!reg.test(str)){
alert("对不起,您输入的字符串类型格式不正确!");//请将“字符串类型”要换成你要验证的那个属性名称!
}
}
}
//判断输入的字符是否为中文
functionIsChinese()
{
varstr=document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[\u0391-\uFFE5]+$/;
if(!reg.test(str)){
alert("对不起,您输入的字符串类型格式不正确!");//请将“字符串类型”要换成你要验证的那个属性名称!
}
}
}
//判断输入的EMAIL格式是否正确
functionIsEmail()
{
varstr=document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
if(!reg.test(str)){
alert("对不起,您输入的字符串类型格式不正确!");//请将“字符串类型”要换成你要验证的那个属性名称!
}
}
}
//判断输入的邮编(只能为六位)是否正确
functionIsZIP()
{
varstr=document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^\d{6}$/;
if(!reg.test(str)){
alert("对不起,您输入的字符串类型格式不正确!");//请将“字符串类型”要换成你要验证的那个属性名称!
}
}
}
//判断输入的数字不大于某个特定的数字
functionMaxValue()
{
varval=document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[-+]?\d*$/;
if(!reg.test(str)){//判断是否为数字类型
if(val>parseInt('123'))//“123”为自己设定的最大值
{
alert('对不起,您输入的数字超出范围');//请将“数字”改成你要验证的那个属性名称!
}
}
}
}
Phone:/^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/
Mobile:/^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$/
Url:/^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/
IdCard:/^\d{15}(\d{2}[A-Za-z0-9])?$/
QQ:/^[1-9]\d{4,8}$/
某种特殊金额:/^((\d{1,3}(,\d{3})*)|(\d+))(\.\d{2})?$///说明:除“XXXXX,XXXXX,XXX.00”格式外
//为上面提供各个JS验证方法提供.trim()属性
String.prototype.trim=function(){
returnthis.replace(/(^\s*)|(\s*$)/g,"");
}
调用:
<inputtype="text"name="str">
<inputtype="button"value="确定"onClick="">//onClick中写自己要调用的JS验证函数
js验证表单js提交验证类
附加:js验证radio是否选择
<scriptlanguage="javascript">
functioncheckform(obj)
{
for(i=0;i<obj.oo.length;i++)
if(obj.oo[i].checked==true)returntrue;
alert("请选择")
returnfalse;
}
</script>
<formid="form1"name="form1"method="post"action=""onsubmit="returncheckform(this)">
<inputtype="radio"name="oo"value="radiobutton"/>
<inputtype="radio"name="oo"value="radiobutton"/>
<inputtype="submit"name="Submit"value="提交"/>
</form>
以上内容是小编给大家介绍的js正则表达式的相关知识,希望对大家有所帮助!