总结了一些平时工作中常用的正则表达式,并简单地封装成了validate.js,现在小编就来说说关于js正则表达式开山篇?下面内容希望能帮助到你,我们来一起看看吧!

js正则表达式开山篇(平时工作中一些常用的JS正则表达式及简单封装)

js正则表达式开山篇

常用正则表达式

总结了一些平时工作中常用的正则表达式,并简单地封装成了validate.js。

/** * 是否是正整数 * @param {*} value 待验证的数值 * @returns 验证结果 */ export function isPositiveInteger(value) { const reg = /^\d $/ return reg.test(value) } /** * 是否是正数,可以是整数,也可以是浮点数 * @param {*} value 待验证的数值 * @returns 验证结果 */ export function isPositivenumber(value) { const reg = /^\d*\.?\d $/ return reg.test(value) } /** * 验证手机号格式是否正确(宽松) * @param {*} value 待验证的手机号 * @returns 验证结果 */ export function validMobile(mobile) { const reg = /^1[0-9]{10}$/ return reg.test(mobile) } /** * 验证电子邮箱格式是否正确 * @param {*} value 待验证的电子邮箱 * @returns 验证结果 */ export function validEmail(email) { const reg = /^([A-Za-z0-9_\-\.]) \@([A-Za-z0-9_\-\.]) \.([A-Za-z]{2,4})$/ return reg.test(email) } /** * 验证URL地址格式是否正确 * @param {*} value 待验证的URL地址 * @returns 验证结果 */ export function validURL(s) { const reg = /^http[s]?:\/\/.*/ return reg.test(s) } /** * 验证身份证号格式是否正确 * @param {*} value 待验证的身份证号 * @returns 验证结果 */ export function validIdNo() { const reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/ return reg.test(s) } /** * 判断是否为空 * @param {*} value 待验证内容 * @returns 验证结果 */ export function isNull(val) { if (typeof val === 'boolean') { return false } if (typeof val === 'number') { return false } if (val instanceof Array) { if (val.length === 0) return true } else if (val instanceof Object) { if (JSON.stringify(val) === '{}') return true } else { if (val === 'null' || val == null || val === 'undefined' || val === undefined || val === '') return true return false } return false }

后记正整数相关正则表达式

//正整数正则 var posPattern = /^\d $/; //负整数正则 var negPattern = /^-\d $/; //整数正则 var intPattern = /^-?\d $/; //输出 true console.log(posPattern.test("42")); //输出 true console.log(negPattern.test("-42")); //输出 true console.log(intPattern.test("-42"));

数值相关正则表达式

//可以是整数也可以是浮点数 //正数正则 var posPattern = /^\d*\.?\d $/; //负数正则 var negPattern = /^-\d*\.?\d $/; //数字正则 var numPattern = /^-?\d*\.?\d $/; console.log(posPattern.test("42.2")); console.log(negPattern.test("-42.2")); console.log(numPattern.test("-42.2"));

手机号

var myreg = /^(13[0-9]{1}|14[5|7|9]{1}|15[0-3|5-9]{1}|166|17[0-3|5-8]{1}|18[0-9]{1}|19[8-9]{1}){1}\d{8}$/;

身份证号

//身份证号(18位)正则 var cP = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/; //输出 true console.log(cP.test("11010519880605371X"));

URL

//URL正则 var urlP= /^((https?|ftp|file):\/\/)?([\da-z\.-] )\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/; //输出 true console.log(urlP.test(http://caibaojian.com));

电子邮箱

//Email正则 var ePattern = /^([A-Za-z0-9_\-\.]) \@([A-Za-z0-9_\-\.]) \.([A-Za-z]{2,4})$/; //输出 true console.log(ePattern.test(99154507@qq.com));

中文

//包含中文正则 var cnPattern = /[\u4E00-\u9FA5]/; //输出 true console.log(cnPattern.test("正则表达式"));

,