正则表达式以及邮箱

[abc]     abc中的其中一个满足

[^abc]        非abc

[0-9A-Za-z]     0到9,A到Z,a到z中的值都满足

d         digital 匹配数字字符

D     非数字字符匹配

s      space 留白,匹配任何不可见字符,包括空格、制表符、换页符等等。等价于[ f v]

S     非留白,匹配任何可见字符

w     word匹配单词字符 类似于[0-9A-Za-z_] 

W     匹配任何非单词字符 等价于[^0-9A-Za-z_] 

          匹配制表符

f       匹配一个换页符

       匹配一个回车符

      匹配一个换行符

?           匹配前面的子表达式出现0次或者1次

+       匹配出现1次或者多次

*        匹配出现任意次

{n}       匹配n次,n为非负整数

{n,}      匹配至少n次,n为非负整数

{n,m}    匹配出现n次到m次,n,m为非负整数

.      匹配除“ ”和" "之外的任何单个字符

2,可能用到的地方

Pattern,Matcher;“abc”.matches(regex);oracle中的regexp_substr(mm.menu_info, '[^=]+&'), '[^&]+'),js中str.match(patt1);c#中的Regex;...

3,常用的正则表达式

邮箱:^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$

手机号:^1(3|4|5|6|7|8|9)d{9}$

身份证号码:

十八位: ^[1-9]d{5}(18|19|([23]d))d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)d{3}[0-9Xx]$

十五位: ^[1-9]d{5}d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)d{2}$

总:( ^[1-9]d{5}(18|19|([23]d))d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)d{3}[0-9Xx]$)|(^[1-9]d{5}d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)d{2}$)

想到哪写到哪,各位看官挑着看~

心之何如,有似万丈迷津,遥亘千里,其中并无舟子可以渡人,除了自渡,他人爱莫能助。
原文地址:https://www.cnblogs.com/s88888888/p/12936983.html