正则表达式汇总
来源:互联网 发布:鑫园合成软件 编辑:程序博客网 时间:2024/05/29 17:51
最近更新时间:2017年8月1日14:59:42
正则表达式,可以快速匹配无规律字符串,在常规开发工程中经常会用到,下面是一下经常用到的技术方案:
1、正则表达式校验:
手机号码:/^1(3|4|5|7|8)[0-9]\d{8}$/ || /^1(3[0-9]|4[57]|5[0-35-9]|7[0135678]|8[0-9])\d{8}$/
邮箱:/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/
数字或字母组合:/^[0-9a-zA-z]*$/g
身份证号码:/^\d{15}|\d{18}}$/
if(!/^1(3[0-9]|4[57]|5[0-35-9]|7[0135678]|8[0-9])\d{8}$/.test(tel)){
//不是正确的11位手机号码
return;
}
if(!/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/.test(email)){
//不是正确的邮箱地址
return;
}
2、正则对象
match()方法:
str="The rain in SPAIN stays mainly in the plain";
n=str.match(/ain/gi);//g全局匹配 i不区分大小写
match()方法的返回值n为一个字符串数组,n=["ain","AIN","ain","ain"];
\u**** 元字符,用于查找以十六进制数 xxxx 规定的 Unicode 字符。如果未找到匹配,则返回 null。
\u4e00-\u9fa5 匹配中文,这两个unicode值正好是Unicode表中的全部汉字的头和尾,代表了符合汉字GB18030规范的字符集。
至少匹配一个汉字的正则表达式:
[\u4e00-\u9fa5]+://"[]"表示可以匹配这个区间的任何值,“+”代表至少出现1次。
replace()方法:
name= name.replace(/[^a-zA-Z\u4E00-\u9FA5\u2006\u0027]/g,'').replace(/^\s+/g,'');//注册用户名校验
/[^a-zA-Z\u4E00-\u9FA5\u2006\u0027]/匹配26个英文字母大小写+全部汉子+2个iOS系统需要的特字符,以外的全部字符。
/^\s+/g全局匹配以空白字符(空格、制表、回车、换行、垂直换行、换页符)开始的一个或连续多个字符串,"+"表示匹配至少一个结果进行匹配,如:一个空格,或连续的多个空格
3、登陆校验实例
用户名:<input type="text" id="username"><br><br>
密码:<input type="password" id="userpassword">
用户名正则表达式:/^[A-Za-z0-9_\-\u4e00-\u9fa5]+$/
密码正则表达式:/[A-Za-z0-9_-]+$/
<script type="text/javascript">
var username=document.getElementById('username');
var userpassword=document.getElementById('userpassword');
username.onchange=function(){
var reg1=/^[A-Za-z0-9_\-\u4e00-\u9fa5]+$/;
if(reg1.test(username.value)){
console.log("用户名是正则表达式");
}else{
console.log("请输入正则表达式");
}
};
userpassword.onchange=function(){
var reg2=/[A-Za-z0-9_-]+$/;
if(reg2.test(userpassword.value)){
console.log("密码是正则表达式");
}else{
console.log("请输入正则表达式");
}
}
4、只支持输入 某些 字符,其它字符无法键入输入框
只支持汉子和英文:/[^a-zA-Z\u4E00-\u9FA5\uF900-\uFA2D]/g
$input.on('input propertychange',function(){
$(this).val($(this).val().replace(/[^a-zA-Z\u4E00-\u9FA5\uF900-\uFA2D]/g,''));
});
只支持数字:$(this).val($(this).val().replace(/[^\d]/g,''));
- 常用正则表达式汇总
- 正则表达式汇总
- 常用正则表达式汇总
- 正则表达式汇总
- 正则表达式汇总
- 正则表达式汇总
- 正则表达式-汇总
- C#正则表达式汇总
- 正则表达式验证汇总
- 正则表达式匹配汇总
- 常见正则表达式汇总
- 正则表达式汇总
- 常用正则表达式汇总
- 正则表达式汇总
- 正则表达式 汇总
- 常用正则表达式汇总
- 常用正则表达式汇总
- 正则表达式汇总
- Flink关系型API的公共部分
- 深入理解Java中为什么内部类可以访问外部类的成员
- jsp技术基础
- 《OpenCL异构并行计算:原理、机制与优化实践》笔记(一):OpenCL简介
- Unity视频插件AVPro Video的事件管理
- 正则表达式汇总
- 2017.07.12【NOIP提高组】模拟赛B组小结
- Spring Cloud -- Ribbon负载均衡
- C primer plus(编程练习)file-2.12-6
- OC 代理的写法
- 期末作业NP问题
- 2017.7.13 学习笔记 js复习及Servlet建包的方法
- Kotlin-40.kotlin调用Java之二(Call Java from Kotlin)
- 【PAT】【Advanced Level】1009. Product of Polynomials (25)