12个常用的js正则表达式_正则表达式

在这篇文章里,我已经编写了12个超有用的正则表达式,这可是WEB开发人员的最爱哦。

1.在input框中只能输入金额,其实就是只能输入最多有两位小数的数字

//第一种在input输入框限制
 <input type="text" maxlength="8" class="form-control" id="amount" style="margin-right: 2px;" value="" onChange="count();" onkeyup="if (this.value==this.value2) return; if (this.value.search(/^\d*(?:\.\d{0,2})?$/)==-1) this.value=(this.value2)?this.value2:'';else this.value2=this.value;">元
//第二种对于表单动态增加的方式,只能在js方法中验证。
 var amount=$("#amount").val();
 if (amount.search(/^\d*(?:\.\d{0,2})?$/)==-1) {
   alert("金额格式不对,最多有两位小数");
   return false;
} 

2.验证邮箱格式

var reg=/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;
 var email=$("#email").val();
 if(!reg.test(email) ){
    alert("请输入符合规范的邮箱账号!");
    return false;
   }

3.密码采用数字、字母、特殊字符且长度为8-20位 

function validatePwd(str) {
if (/^.*?[\d]+.*$/.test(str) && /^.*?[A-Za-z]/.test(str)
&& /^.*?[~/`!@#$%^&*()_+|{}?;:><\-\]\\[\/].*$/.test(str) && /^.{8,20}$/.test(str)) {
return true;
}
return false;
}

4.验证电话号码

/**
 * 验证电话号码
 * @param phoneValue 要验证的电话号码
 * @returns 匹配返回true 不匹配返回false
 */
function validatePhone(phoneValue) {
 phoneValue = valueTrim(phoneValue);
 var reg = /^[1][0-9]{10}$/;
 return reg.test(phoneValue);
}

5.判断是否是汉字

/**
 * 判断是否是汉字
 *
 * @param charValue
 *   要验证的数据
 * @returns 匹配返回true 不匹配返回false
 */
function isCharacter(charValue) {
 var reg = /^[\u4e00-\u9fa5]{0,}$/;
 return reg.test(charValue);
}

6.是否为字母:true:是,false:不是

function isChar(charValue){
 var charPattern=/^[a-zA-Z]*$/; //是否为字母
 result=charPattern.test(charValue);
 return result;
}

7.判断是否为数字

function isNum(numValue){
 var numPattern=/^\d*$/; //数字的正则表达式
 result=numPattern.test(numValue);
 return result;
}

8.整数的正则表达式

function isInt(intValue){
  var intPattern=/^0$|^[1-9]\d*$/; //整数的正则表达式
 result=intPattern.test(intValue);
  return result;
 }

9.是否为字母和数字

 function isCharNum(flagValue){
 var flagPattern=/^[a-zA-Z0-9]*$/; //是否为字母和数字
 result=flagPattern.test(flagValue);
 return result;
}

10.检验18位身份证号码 

/**
 * 检验18位身份证号码(15位号码可以只检测生日是否正确即可,自行解决)
 *
 * @param idCardValue
 *   18位身份证号
 * @returns 匹配返回true 不匹配返回false
 */
function idCardVildate(cid) {
var arrExp = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ];// 加权因子
var arrValid = [ 1, 0, "X", 9, 8, 7, 6, 5, 4, 3, 2 ];// 校验码
var reg = /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/;
if (reg.test(cid)) {
var sum = 0, idx;
for (var i = 0; i < cid.length - 1; i++) {
// 对前17位数字与权值乘积求和
sum += parseInt(cid.substr(i, 1), 10) * arrExp[i];
}
// 计算模(固定算法)
idx = sum % 11;
// 检验第18为是否与校验码相等
return arrValid[idx] == cid.substr(17, 1).toUpperCase();
} else {
return false;
}
}

11.验证15位数身份证号码中的生日是否是有效生日

function isValidityBrithBy15IdCard(idCard15) {
 var year = idCard15.substring(6, 8);
 var month = idCard15.substring(8, 10);
 var day = idCard15.substring(10, 12);
 var temp_date = new Date(year, parseFloat(month) - 1, parseFloat(day));
 // 对于老身份证中的你年龄则不需考虑千年虫问题而使用getYear()方法
 if (temp_date.getYear() != parseFloat(year)
   || temp_date.getMonth() != parseFloat(month) - 1
   || temp_date.getDate() != parseFloat(day)) {
  return false;
 } else {
  return true;
 }
} 

12.验证18位数身份证号码中的生日是否是有效生日

function isValidityBrithBy18IdCard(idCard18) {
 var year = idCard18.substring(6, 10);
 var month = idCard18.substring(10, 12);
 var day = idCard18.substring(12, 14);
 var temp_date = new Date(year, parseFloat(month) - 1, parseFloat(day));
 // 这里用getFullYear()获取年份,避免千年虫问题
 if (temp_date.getFullYear() != parseFloat(year)
   || temp_date.getMonth() != parseFloat(month) - 1
   || temp_date.getDate() != parseFloat(day)) {
  return false;
 } else {
  return true;
 }
}

这就是小编整理的web开发中常用的表单验证的正则表达式,希望大家喜欢。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索js
正则表达式
js常用正则表达式、js常用正则表达式大全、js常用的正则表达式、常用正则表达式、常用正则表达式大全,以便于您获取更多的相关知识。

时间: 2024-12-24 16:25:04

12个常用的js正则表达式_正则表达式的相关文章

JS常用正则表达式及验证时间的正则表达式_正则表达式

在这篇文章里,我已经编写了12个超有用的正则表达式,这可是WEB开发人员的最爱哦. 1.在input框中只能输入金额,其实就是只能输入最多有两位小数的数字 //第一种在input输入框限制 <input type="text" maxlength="8" class="form-control" id="amount" style="margin-right: 2px;" value="&q

js正则表达式常用函数详解_正则表达式

一.js正则表达式之replace函数用法: 函数功能:replace函数返回根据正则表达式进行文字替换后的字符串的复制. 函数格式:stringObj.replace(rgExp, replaceText) 参数:字符串stringObj,rgExp正则表达式,replaceText所替换的内容 本模块涉及的内容包括字符串创建,正则表达式隐式创建对象,创建正则表达式,进行replace方法的使用匹配 示例代码: <html> <script language="javascr

正则表达式同时匹配中英文及常用正则表达式_正则表达式

匹配中文:[\u4e00-\u9fa5] 英文字母:[a-zA-Z] 数字:[0-9] 匹配中文,英文字母和数字及_: ^[\u4e00-\u9fa5_a-zA-Z0-9]+$ 同时判断输入长度: [\u4e00-\u9fa5_a-zA-Z0-9_]{4,10} ^[\w\u4E00-\u9FA5\uF900-\uFA2D]*$ 1.一个正则表达式,只含有汉字.数字.字母.下划线不能以下划线开头和结尾: ^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$ 其中:

收集整理项目中常用到的正则表达式_正则表达式

最近做的一个内部系统项目,涉及大量的文本校验,里面用到了一些常用的正则表达式,收集不易,先记录在此,以备后用. 匹配中文字符的正则表达式: [\u4e00-\u9fa5] 匹配双字节字符(包括汉字在内):[^\x00-\xff]  可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) 匹配空白行的正则表达式:\n\s*\r  可以用来删除空白行 匹配HTML标记的正则表达式:< (\S*?)[^>]*>.*?|< .*? /> 这个仅仅能匹配部分,对于复杂的

日常收集JS邮箱验证正则表达式_正则表达式

背景:正则是一门厚书啊,想写好也不容易,但日常中也就那些像电话.邮箱.手机,网上一堆,但真好验证好了,还得了解一点正则知识,再就是多测试了:-) 下面邮箱正则: 中划线:中划线域名就是米农口中说的扁担域名了,扁担域名由于输入比较麻烦,看起来也比较不正规,是没有多大的价值,目前投资的人是比较少的.按照DNS的标准,域名是不允许有下划线的. 下划线:一些人在注册用户名的喜欢使用下划线_,这种用户名在登录邮箱时很麻烦,给你发邮件的人也很不方便. 二级域名邮箱基本被消灭,这个哥们的正则可以写下划线,扩大

最新密码验证正则表达式_正则表达式

正则表达式验证密码功能在项目中经常被使用到,但是很多朋友还是不大会使用密码正则表达式进行验证,本文小编为大家整理了php密码验证正则表达式.python密码强度正则,当然还有大家常用到的js正则表达式,希望大家喜欢. 刚开始复习一下,什么是正则表达式?在编写处理字符串的程序或网页时,经常有查找符合某些复杂规则的字符串的需要.正则表达式就是用于描述这些规则的工具.换句话说,正则表达式就是记录文本规则的代码. php密码验证正则表达式(8位长度限制) <?php //密码验证 $password =

55分钟学会正则表达式_正则表达式

什么是正则 正则表达式是一种用来描述一定数量文本的模式,用来匹配相同规范样式的文本.在JavaScript中用RegExp对象表示正则表达式( 即Regular Eexpression),它是对字符串执行模式匹配的强大工具. 正则表达式是一种查找以及字符串替换操作.正则表达式在文本编辑器中广泛使用,比如正则表达式被用于: 检查文本中是否含有指定的特征词 找出文中匹配特征词的位置 从文本中提取信息,比如:字符串的子串 修改文本 与文本编辑器相似,几乎所有的高级编程语言都支持正则表达式.在这样的语境

去掉字符串前后所有空格的正则表达式_正则表达式

正则表达式,又称正规表示法.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的文本. /**去掉字符串前后所有空格*/ function trim(str){ return str.replace(/(^\s*)|(\s*$)/g, ""); } //计算标题长度 funct

String字符串匹配javascript 正则表达式_正则表达式

在JavaScript代码中使用正则表达式进行模式匹配经常会用到String对象和RegExp对象的一些方法,例如replace.match.search等方法,下面所述是对相关方法使用的总结,需要的朋友参考下. String对象中支持正则表达式有4种方法,分别是:search.replace.match.split str.search(regexp) 定义:search()方法将在字符串str中检索与表达式regexp相匹配的字串,并且返回第一个匹配字串的第一个字符的位置.如果没有找到任何匹

如何快速学习正则表达式_正则表达式

正则表达式概念 正则表达式,又称正规表示法.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的文本. 在日常工作中,我们经常写正则表达式,比如在表单中经常用来验证用户输入的格式是否正确,我们就会用到正则表达式;可以把正则表达式看做是可以描述问题的语言,它就是专门为模式匹配而设计的 --