javascript 表单验证常见正则


Posted in Javascript onSeptember 28, 2009
/* 
用途:校验ip地址的格式 
输入:strIP:ip地址 
返回:如果通过验证返回true,否则返回false; 
*/ 
function isIP(strIP) { 
if (isNull(strIP)) return false; 
var re = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/g //匹配IP地址的正则表达式 
if (re.test(strIP)) { 
if (RegExp.$1 < 256 && RegExp.$2 < 256 && RegExp.$3 < 256 && RegExp.$4 < 256) return true; 
} 
return false; 
} 
/* 
用途:检查输入字符串是否为空或者全部都是空格 
输入:str 
返回: 
如果全是空返回true,否则返回false 
*/ 
function isNull(str) { 
if (str == "") return true; 
var regu = "^[ ]+$"; 
var re = new RegExp(regu); 
return re.test(str); 
} 
/* 
用途:检查输入对象的值是否符合整数格式 
输入:str 输入的字符串 
返回:如果通过验证返回true,否则返回false 
*/ 
function isInteger(str) { 
var regu = /^[-]{0,1}[0-9]{1,}$/; 
return regu.test(str); 
} 
/* 
用途:检查输入手机号码是否正确 
输入: 
s:字符串 
返回: 
如果通过验证返回true,否则返回false 
*/ 
function checkMobile(s) { 
var regu = /^[1][0-9][0-9]{9}$/; 
var re = new RegExp(regu); 
if (re.test(s)) { 
return true; 
} else { 
return false; 
} 
} 
/* 
用途:检查输入字符串是否符合正整数格式 
输入: 
s:字符串 
返回: 
如果通过验证返回true,否则返回false 
*/ 
function isNumber(s) { 
var regu = "^[0-9]+$"; 
var re = new RegExp(regu); 
if (s.search(re) != -1) { 
return true; 
} else { 
return false; 
} 
} 
/* 
用途:检查输入字符串是否是带小数的数字格式,可以是负数 
输入: 
s:字符串 
返回: 
如果通过验证返回true,否则返回false 
*/ 
function isDecimal(str) { 
if (isInteger(str)) return true; 
var re = /^[-]{0,1}(\d+)[\.]+(\d+)$/; 
if (re.test(str)) { 
if (RegExp.$1 == 0 && RegExp.$2 == 0) return false; 
return true; 
} else { 
return false; 
} 
} 
/* 
用途:检查输入对象的值是否符合端口号格式 
输入:str 输入的字符串 
返回:如果通过验证返回true,否则返回false 
*/ 
function isPort(str) { 
return (isNumber(str) && str < 65536); 
} 
/* 
用途:检查输入对象的值是否符合E-Mail格式 
输入:str 输入的字符串 
返回:如果通过验证返回true,否则返回false 
*/ 
function isEmail(str) { 
var myReg = /^[-_A-Za-z0-9]+@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/; 
if (myReg.test(str)) return true; 
return false; 
} 
/* 
用途:检查输入字符串是否符合金额格式 
格式定义为带小数的正数,小数点后最多三位 
输入: 
s:字符串 
返回: 
如果通过验证返回true,否则返回false 
*/ 
function isMoney(s) { 
var regu = "^[0-9]+[\.][0-9]{0,3}$"; 
var re = new RegExp(regu); 
if (re.test(s)) { 
return true; 
} else { 
return false; 
} 
} 
/* 
用途:检查输入字符串是否只由英文字母和数字和下划线组成 
输入: 
s:字符串 
返回: 
如果通过验证返回true,否则返回false 
*/ 
function isNumberOr_Letter(s) {//判断是否是数字或字母 
var regu = "^[0-9a-zA-Z\_]+$"; 
var re = new RegExp(regu); 
if (re.test(s)) { 
return true; 
} else { 
return false; 
} 
} 
/* 
用途:检查输入字符串是否只由英文字母和数字组成 
输入: 
s:字符串 
返回: 
如果通过验证返回true,否则返回false 
*/ 
function isNumberOrLetter(s) {//判断是否是数字或字母 
var regu = "^[0-9a-zA-Z]+$"; 
var re = new RegExp(regu); 
if (re.test(s)) { 
return true; 
} else { 
return false; 
} 
} 
/* 
用途:检查输入字符串是否只由汉字、字母、数字组成 
输入: 
value:字符串 
返回: 
如果通过验证返回true,否则返回false 
*/ 
function isChinaOrNumbOrLett(s) {//判断是否是汉字、字母、数字组成 
var regu = "^[0-9a-zA-Z\u4e00-\u9fa5]+$"; 
var re = new RegExp(regu); 
if (re.test(s)) { 
return true; 
} else { 
return false; 
} 
} 
/* 
用途:判断是否是日期 
输入:date:日期;fmt:日期格式 
返回:如果通过验证返回true,否则返回false 
*/ 
function isDate(date, fmt) { 
if (fmt == null) fmt = "yyyyMMdd"; 
var yIndex = fmt.indexOf("yyyy"); 
if (yIndex == -1) return false; 
var year = date.substring(yIndex, yIndex + 4); 
var mIndex = fmt.indexOf("MM"); 
if (mIndex == -1) return false; 
var month = date.substring(mIndex, mIndex + 2); 
var dIndex = fmt.indexOf("dd"); 
if (dIndex == -1) return false; 
var day = date.substring(dIndex, dIndex + 2); 
if (!isNumber(year) || year > "2100" || year < "1900") return false; 
if (!isNumber(month) || month > "12" || month < "01") return false; 
if (day > getMaxDay(year, month) || day < "01") return false; 
return true; 
} 
function getMaxDay(year, month) { 
if (month == 4 || month == 6 || month == 9 || month == 11) 
return "30"; 
if (month == 2) 
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) 
return "29"; 
else 
return "28"; 
return "31"; 
} 
/* 
用途:字符1是否以字符串2结束 
输入:str1:字符串;str2:被包含的字符串 
返回:如果通过验证返回true,否则返回false 
*/ 
function isLastMatch(str1, str2) { 
var index = str1.lastIndexOf(str2); 
if (str1.length == index + str2.length) return true; 
return false; 
} 
/* 
用途:字符1是否以字符串2开始 
输入:str1:字符串;str2:被包含的字符串 
返回:如果通过验证返回true,否则返回false 
*/ 
function isFirstMatch(str1, str2) { 
var index = str1.indexOf(str2); 
if (index == 0) return true; 
return false; 
} 
/* 
用途:字符1是包含字符串2 
输入:str1:字符串;str2:被包含的字符串 
返回:如果通过验证返回true,否则返回false 
*/ 
function isMatch(str1, str2) { 
var index = str1.indexOf(str2); 
if (index == -1) return false; 
return true; 
} 
/* 
用途:检查输入的起止日期是否正确,规则为两个日期的格式正确, 
且结束如期>=起始日期 
输入: 
startDate:起始日期,字符串 
endDate:结束如期,字符串 
返回: 
如果通过验证返回true,否则返回false 
*/ 
function checkTwoDate(startDate, endDate) { 
if (!isDate(startDate)) { 
alert("起始日期不正确!"); 
return false; 
} else if (!isDate(endDate)) { 
alert("终止日期不正确!"); 
return false; 
} else if (startDate > endDate) { 
alert("起始日期不能大于终止日期!"); 
return false; 
} 
return true; 
} 
/* 
用途:检查输入的Email信箱格式是否正确 
输入: 
strEmail:字符串 
返回: 
如果通过验证返回true,否则返回false 
*/ 
function checkEmail(strEmail) { 
//var emailReg = /^[_a-z0-9]+@([_a-z0-9]+\.)+[a-z0-9]{2,3}$/; 
var emailReg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/; 
if (emailReg.test(strEmail)) { 
return true; 
} else { 
alert("您输入的Email地址格式不正确!"); 
return false; 
} 
}
Javascript 相关文章推荐
javascript concat数组累加 示例
Sep 03 Javascript
JS Map 和 List 的简单实现代码
Jul 08 Javascript
location.href用法总结(最主要的)
Dec 27 Javascript
javascript结合Canvas 实现简易的圆形时钟
Mar 11 Javascript
使用jQuery+EasyUI实现CheckBoxTree的级联选中特效
Dec 06 Javascript
把普通对象转换成json格式的对象的简单实例
Jul 04 Javascript
基于KO+BootStrap+MVC实现的分页控件代码分享
Nov 07 Javascript
浅谈Vue父子组件和非父子组件传值问题
Aug 22 Javascript
JS实现左边列表移到到右边列表功能
Mar 28 Javascript
微信小程序自定义导航栏
Dec 31 Javascript
150行代码带你实现微信小程序中的数据侦听
May 17 Javascript
axios异步提交表单数据的几种方法
Aug 11 Javascript
javascript 页面划词搜索JS
Sep 28 #Javascript
jquery 模式对话框终极版实现代码
Sep 28 #Javascript
javascript的onchange事件与jQuery的change()方法比较
Sep 28 #Javascript
支持ie与FireFox的剪切板操作代码
Sep 28 #Javascript
javaScript 简单验证代码(用户名,密码,邮箱)
Sep 28 #Javascript
javascript parseInt 大改造
Sep 27 #Javascript
网页自动跳转代码收集
Sep 27 #Javascript
You might like
PHP版国家代码、缩写查询函数代码
2011/08/14 PHP
php 无限级分类,超级简单的无限级分类,支持输出树状图
2014/06/29 PHP
php无序树实现方法
2015/07/28 PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
2017/07/03 PHP
Javascript Select操作大集合
2009/05/26 Javascript
JS图片浏览组件PhotoLook的公开属性方法介绍和进阶实例代码
2010/11/09 Javascript
浏览器缩放检测的js代码
2014/09/28 Javascript
js控制鼠标事件移动及移出效果显示
2014/10/19 Javascript
Javascript学习笔记之数组的构造函数
2014/11/23 Javascript
jQuery制作仿Mac Lion OS滚动条效果
2015/02/10 Javascript
详解AngularJS中的作用域
2015/06/17 Javascript
JS函数多个参数默认值指定方法分析
2016/11/28 Javascript
Bootstrap基本组件学习笔记之下拉菜单(7)
2016/12/07 Javascript
解析ajaxFileUpload 异步上传文件简单使用
2016/12/30 Javascript
NodeJS遍历文件生产文件列表功能示例
2017/01/22 NodeJs
JS几个常用的函数和对象定义与用法示例
2020/01/15 Javascript
vue添加锚点,实现滚动页面时锚点添加相应的class操作
2020/08/10 Javascript
Python Deque 模块使用详解
2014/07/04 Python
Django 前后台的数据传递的方法
2017/08/08 Python
Python实现破解猜数游戏算法示例
2017/09/25 Python
通过Py2exe将自己的python程序打包成.exe/.app的方法
2018/05/26 Python
对pycharm 修改程序运行所需内存详解
2018/12/03 Python
Python对象与引用的介绍
2019/01/24 Python
Python实现元素等待代码实例
2019/11/11 Python
给 TensorFlow 变量进行赋值的方式
2020/02/10 Python
浅谈Python中re.match()和re.search()的使用及区别
2020/04/14 Python
Myprotein比利时官方网站:欧洲第一运动营养品牌
2020/10/04 全球购物
高职教师岗位职责
2013/12/24 职场文书
学校食堂标语
2014/10/06 职场文书
2015年大学组织委员个人工作总结
2015/10/23 职场文书
担保书怎么写 ?
2019/04/22 职场文书
python tkinter实现定时关机
2021/04/21 Python
MySQL query_cache_type 参数与使用详解
2021/07/01 MySQL
K8s部署发布Golang应用程序的实现方法
2021/07/16 Golang
Java org.w3c.dom.Document 类方法引用报错
2021/08/07 Java/Android
logback如何自定义日志存储
2021/08/30 Java/Android