js基础-9-正则表达式

基础

\d就是[0-9]。表示是一位数字。记忆方式:其英文是digit(数字)。

\D就是[^0-9]。表示除数字外的任意字符。

\w就是[0-9a-zA-Z_]。表示数字、大小写字母和下划线。记忆方式:w是word的简写,也称单词字符。

\W[^0-9a-zA-Z_]。非单词字符。

\s是[ \t\v\n\r\f]。表示空白符,包括空格、水平制表符、垂直制表符、换行符、回车符、换页符。记忆方式:s是space character的首字母。

\S[^ \t\v\n\r\f]。 非空白符。

.就是[^\n\r\u2028\u2029]。通配符,表示几乎任意字符。换行符、回车符、行分隔符和段分隔符除外。记忆方式:想想省略号...中的每个点,都可以理解成占位符,表示任何类似的东西。
{m,} 表示至少出现m次。

{m} 等价于{m,m},表示出现m次。

? 等价于{0,1},表示出现或者不出现。记忆方式:问号的意思表示,有吗?

+ 等价于{1,},表示出现至少一次。记忆方式:加号是追加的意思,得先有一个,然后才考虑追加。

* 等价于{0,},表示出现任意次,有可能不出现。记忆方式:看看天上的星星,可能一颗没有,可能零散有几颗,可能数也数不过来。

JS正则表达式实战用法

邮箱的JS正则表达式:

var mailReg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;

手机的JS正则表达式:

var phoneReg = /^1\d{10}$/;
1开头,0-9出现10

身份证的JS正则表达式:

var idCardReg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
var reg=/^\d{17}(\d|X|x)$/
17位数字,再加数字或X或x

姓名(汉字)的JS正则表达式:

var nameReg = /^[\u4e00-\u9fa5]{2,4}$/; // 2-4位的汉字名字

普通域名的JS正则表达式:

var urlReg = /^(http(s)?:\/\/)?(www\.)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:\d+)*(\/\w+\.\w+)*([\?&]\w+=\w*)*$/; // https或http协议的url

用户名的JS正则表达式:

var userNameReg = /^[A-Za-z0-9-_]*$/; // 用户名为数字英文下划线或短划线

QQ号的JS正则表达式:

var qqReg = /^[1-9][0-9]{4,}$/;

邮编的JS正则表达式:

var mailReg = /^[1-9][0-9]{5}$/;

HTML标签的JS正则表达式:

var tagReg = /<[^>]+>/; //可以用来去掉html文本中的标签,得到纯文字

日期的JS正则表达式:

var dateReg = /^\d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d|3[0-1])$/; //YYYY-MM-dd格式,短线可以视情况替换

时间的JS正则表达式:

var timeReg = /^([0-1]\d|2[0-3]):[0-5]\d:[0-5]\d$/; //HH:mm:ss格式,冒号可以视情况替换
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值