正则表达式是一个很有用的东西,能帮助我们做许许多多的验证。下面是一些对字符串验证的正则整理:正则表达式(regular expression)是一个描述字符模式的对象。使用正则表达式可以进行强大的模式匹配和文本检索与替换功能。
正则表达式有三个参数 : i:忽略大小写 g:全局匹配 m:多行匹配
测试正则表达式: 方法 test() exec()
RegExp对象包含两个常用方法:test()和exec(),功能基本相似,用于测试字符串匹配。
test()方法在字符串中查找是否存在指定的正则表达式,并返回布尔值,如果存在则返回true,否则返回false。
exec()方法也用于在字符串中查找指定正则表达式,如果exec()执行成功,则返回包含该查找字符串的相关信息数据,否则返回null。(返回结果数组)
写法:
var zg =/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]*$/;
if (!zg.test(str)) {
return false;
} else {
return true;
}
1.// 判断字符串是否为数字和字母组合,字符串中必须同时包含有字母跟数字才返回真
var zg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]*$/;
2.// 判断字符串是否为数字、字母组合,字符串中含有数字或者字母,或者数字和字母都返回真
var zg = /^[0-9a-zA-Z]*$/;
3.// 手机号码正则验证 ,号码1开头 第二位为3456789其中一个 后面9位随机
var zg = /^1[3456789]\d{9}$/; 或者
var zg = /^1(3|4|5|6|7|8|9)\d{9}$/ 或者
var zg = /^1\d{10}$/ 不验证第二位 或者
var zg = /^1[0-9]\d{9}$/ 不验证第二位
4. 固定电话号码 正则
var zg = /^(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}$/;
5. 身份证号码 正则
//身份证正则表达式(15位)
isIDCard1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;
//身份证正则表达式(18位)
isIDCard2=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/;
身份证正则合并:(^\d{15}$)|(^\d{17}([0-9]|X)$)
6.邮箱验证
var zg = /^\w+@[a-z0-9]+\.[a-z]+$/i; /*邮箱不区分大小写*/
var zg = /^\w+((.\w+)|(-\w+))@[A-Za-z0-9]+((.|-)[A-Za-z0-9]+).[A-Za-z0-9]+$/;
7.车牌号正则
var zg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF]$)|([DF][A-HJ-NP-Z0-9][0-9]{4}$))/;
var zg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/;
8.其他
提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
提取信息中的邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
提取信息中的图片链接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+)
提取信息中的中国电话号码(包括移动和固定电话):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}
提取信息中的中国邮政编码:[1-9]{1}(\d+){5}
提取信息中的中国身份证号码:\d{18}|\d{15}
提取信息中的整数:\d+
提取信息中的浮点数(即小数):(-?\d*)\.?\d+
提取信息中的任何数字 :(-?\d*)(\.\d+)?
提取信息中的中文字符串:[\u4e00-\u9fa5]*
提取信息中的双字节字符串 (汉字):[^\x00-\xff]*