正则表达式的创建
-
创建正则的方式
-
字面量的方式 const reg = /正则符号/
-
内置构造函数 const reg = new RegExp('正则符号')、
-
-
主要的使用方法
用于匹配某一个字符串是否符合规则 true 符合规则 false 不符合
语法: 正则.test(字符串)
元字符
普通元字符
-
\d表示 一位 数字(0~9)
-
\D表示 一位 非数字
-
\s表示 一位 空白字符(空格 缩减)
-
\S表示 一位 非空字符
-
\w表示 一位 字母/数字/下划线
-
\W表示 一位 非字母/数字/下划线
-
. 表示 一位 非换行内容
-
\ 表示 转义 可以将一个没有特殊含义的字符, 转换为可能具有特殊含义 也可以将一个具有特殊含义的字符, 转换为一个不具备特殊含义的字符串
边界元字符
-
^表示开头
- /^\d&/ 以0~9的数字开头
-
&表示结尾
- /\d&/ 以0~9的结尾
-
当^与&结合在一起的时候,意思是字符串必须完全匹配当前的正则才可以
- /^\d&/ ==> 必须是一个0到9的数字
限定元字符
-
限定 前一个 符号出现的次数
- * 表示 0~正无穷次
- + 表示 1~正无穷次
- ? 表示 0~1次
-
下边三个限定符的大括号不要书写空格
- {n} 限定n次
- {n,} 限定n到无穷次
- {n,m} 限定n到m次
正则的特殊元字符
- ()
- 将包含的内容当成一个整体
- 单独捕获 (暂时不讲, 需要等讲完捕获之后)
- | 或
- 表示 左右两边 满足其中一个就行
- \比如: a|b 字符串是 a 或者 b 都可以
- 注意: | 有没有 被 () 包裹
- 包裹: 将小括号的分成两个条件
- 没有被包裹: 将整个正则分成两个
- 表示 左右两边 满足其中一个就行
- [ ] 包含
- [abcd]
- 当前规则表明有一个字符, 是 abcd 其中的一个就行
- [^] 不包含
- [^abcd]
- 当前规则表明有一个字符, 不是 abcd 其中的一个就行
- - 到
- 一般需要和 [ ] 连用
- [0-9] 表明一个数字 0~9 即可
- [^0-9] 表明一个非数字内容
- [a-z] 表明一个小写字母 a~z 即可
- [A-Z] 表明一个大写字母 A~Z 即可
正则的重复元字符
-
\1 \2 \3 \4 ...... \n
-
表示重复前边 第 n 个 小括号匹配的内容