正则基础使用

命名:

var reg = new RegExp(字符串,规则);

Reg ->regular 规律、规则

Exp ->expression 表达式

简写:

var reg = /正则/规则;

规则:

i -  忽略大小写

m - 多行模式

g - 全局的

转义:\

\d - [0-9]  所有的数字

\w - [a-zA-Z0-9_]  字母数字下划线

\s - [ ]  空格

\D - [^0-9]  非数字

\W - [^a-zA-Z0-9_]

\S - [^ ]  非空格

. - 任意东西

\. - 单纯的.

\\ - 单纯的\

修饰:

^ - 行首(注:在中括号中,是排除的意思)

配合m用,识别字符串的换行

不配合m用,整个字符串的开头

$ - 行尾

| - 或

量词:

{}

{n}- 正好n个

例:/\d{4}/ - 4个

{n,m} - 最少n个,最多m个

例:/\d{3,5}/ - 最少n个,最多5个

{n,} - 最少n个,最多不限

例:/\d{3,}/ - 最少3个,最多不限

+={1,} - 最少一个,最多不限

例:/\d+/ 最少一个,最多不限

*={0,} - 可以没有,有了不限

例:/\d*/

?={0,1} - 可有可无:没有就没有,有就最多一个

例:/\d?/

注:量词只管前面的一个东西

例:/ab+/  一个a和若干个b  abbbb

/(ab)+/  若干个ab    abababab

常用符号:

[]:

1:或

注释:[abc] - /a|b|c/ a或b或c

例:r[abc]g - rag rbg rcg

2:到[-]

注释:[0-9] \d 0到9,所有的数字

[a-z]  所有的小写字母

[A-Z]  所有的大写字母

例:[1-38]  /1-3|8/  1到3或8

[1-3-8] /1-3|-|8  1到3或|或8

[1-34-8]  /1-3|4-8/  1到3或4到8

3:排除[^]

注释:排除

例:[^0-3]  排除0-3

常用正则:

手机号/固话/400/800

const regTel = /^((0?(13|14|15|18|17)[0-9]{9})|([0-9]{3,4}-)[0-9]{7,8})|((800|400)-[0-9]{3}-[0-9]{4})$/

只可以输入数字和'-'

const reg=/^[0-9-]*$/

推荐阅读更多精彩内容