正则表达式匹配大全

工作中不断的用到正则匹配 , 先把用过的记录下来 .
当然 , 治根还是得治本 , 抽空学习正则 , 能自己写出来的正则才有意义 , 而不是网上CV
收纳 ↓↓↓↓

1. 匹配中文字符

  [\u4e00-\u9fa5]
  ^[\u4e00-\u9fa5]{0,}$

2.匹配双字节字符(包括汉字在内)

  [^\x00-\xff]

3. 匹配空白行

  \n\s*\r

4. 匹配Email地址

 [\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?
 
 ^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$

5.匹配网址URL

 [a-zA-z]+://[^\s]*

6.匹配国内电话号码

 \d{3}-\d{8}|\d{4}-\{7,8}

7.匹配18位身份证号

 ^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$

8.匹配正整数

/^[0-9]*$/

9.匹配正整数且不为0


10.匹配正整数

^[1-9]\d*$

11.匹配反斜杠

/\\/g
//字符串里的单个反斜杠为:"\\"
//第一个\为转义, 第二个才是真的\
//附替换单个反斜杠为双反斜杠
str.replace(/\\/g,"\\\\") 

12.匹配整数

^-?[1-9]\d*$

13.匹配(年-月-日)格式日期

([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8])))

14.验证用户密码 , 正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。

"^[a-zA-Z]\w{5,17}$"

15.只能输入n位的数字:

"^\d{n}$"

16.只能输入至少n位的数字:

"^\d{n,}$"

17.只能输入m~n位的数字:

"^\d{m,n}$" 

18.只能输入零和非零开头的数字:

"^(0|[1-9][0-9]*)$"

19.只能输入有两位小数的正实数:

"^[0-9]+(.[0-9]{2})?$"

20.只能输入有1~3位小数的正实数

"^[0-9]+(.[0-9]{1,3})?$"

21.只能输入非零的正整数:

"^\+?[1-9][0-9]*$"

22.只能输入非零的负整数:

"^\-[1-9][]0-9"*$

23.只能输入长度为3的字符:

"^.{3}$"

24.只能输入由26个英文字母组成的字符串:

"^[A-Za-z]+$"

25.只能输入由26个大写英文字母组成的字符串:

"^[A-Z]+$"

26.只能输入由26个小写英文字母组成的字符串:

"^[a-z]+$"

27.匹配首尾空格的正则表达式:

(^\s*)|(\s*$)

未完待更

分享一个链接,但是不知道能不能通过检测 你是如何学会正则表达式的?

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李泽举

如对你有帮助,那我就没白写

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值