正则表达式一般规则

本文详细介绍了正则表达式的各种模式和用法,包括常见字符类、重复模式、位置匹配等,涵盖了用户名、密码、电子邮件、网址等多种应用场景的正则表达式实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<!--

\d 数字

\D 非数字

\w 单词:a-zA-Z0-9_     //注意包括下划线

\W 非单词

\s 任何空白字符,包括空格、制表符、换页符等等

\S 任何非空白字符

. 通配符,匹配任意字符

{n} 匹配 n 次

{n,} 大于或等于 n 次

{n,m} 在 n 和 m 之间

+ 1~n 次

* 0~n 次

? 0~1 次

^ 匹配开头

$ 匹配结尾

---------------------

用户名:只能由英文字母和数字组成,长度为 4~16 个字符,并且以英文字母开头

/^[a-zA-Z][a-zA-Z0-9]{3,15}$/

密码: 数字 6-20 个字符

/^[0-9]{6,20}$/

生日:生日的年份在 1900~2009 之间,

生日格式为 1980-5-12 或 1988-05-04 的形式,

/^((19\d{2})|(200\d))-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d|3[0-1])$/

 

匹配中文字符的正则表达式: /^[\u4e00-\u9fa5]$/

匹配双字节字符(包括汉字在内):/^[^\x00-\xff]$/

//可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

 

匹配空白行的正则表达式:/^\n\s*\r$/  //可以用来删除空白行

匹配HTML标记的正则表达式:/^<(\S*?)[^>]*>.*?</\1>|<.*? />$/

匹配首尾空白字符的正则表达式:^\s*|\s*$

//可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等)

 

匹配Email地址:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/

电子邮箱:符合邮箱地址的格式

/^\w+@\w+(.\w{2,3}){1,2}$/\w 等价于[a-zA-Z0-9_]

匹配网址URL的正则表达式:/^[a-zA-z]+://[^\s]*$/

匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):

^[a-zA-Z][a-zA-Z0-9_]{4,15}$

匹配国内电话号码:/^\d{3}-\d{8}|\d{4}-\d{7}$/

//匹配形式如 0511-4405222 或 021-87888822

 

匹配腾讯QQ号:/^[1-9][0-9]{4,}$/    //腾讯QQ号从10000开始

匹配中国邮政编码:/^[1-9]\d{5}(?!\d)$/

//中国邮政编码为6位数字

匹配身份证:/^\d{15}$|\d{18}$/

//中国的身份证为15位或18位

匹配ip地址:/^\d+\.\d+\.\d+\.\d+$/

//提取ip地址时有用

匹配特定数字:

^[1-9]\d*$//匹配正整数

^-[1-9]\d*$ //匹配负整数

^-?[1-9]\d*$//匹配整数

^[1-9]\d*|0$//匹配非负整数(正整数 + 0)

^-[1-9]\d*|0$//匹配非正整数(负整数 + 0)

^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$//匹配正浮点数

^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$//匹配负浮点数

^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$ //匹配浮点数

^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$//匹配非负浮点数(正浮点数 + 0)

^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$//匹配非正浮点数(负浮点数 + 0)

 

匹配特定字符串:

^[A-Za-z]+$ //匹配由26个英文字母组成的字符串

^[A-Z]+$ //匹配由26个英文字母的大写组成的字符串

^[a-z]+$ //匹配由26个英文字母的小写组成的字符串

^[A-Za-z0-9]+$ //匹配由数字和26个英文字母组成的字符串

^\w+$//匹配由数字、26个英文字母或者下划线组成的字符串

 

 

var reg = /^[a-zA-Z]$/;// 这里是 正则表度达式,大小写英文问字母都可答以

if (reg.test(userName.value) != true) {

alert("用户应为全英文");

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值