什么是正则

正则就是一种规则的的表达式,书写一段规则,用于匹配一段字符串是否符合规则 创建正则表达式(two way)

字面量的形式内置构造函数的形式

正则的常用方法

1.匹配(test) 匹配字符串是否符合正则规则 符合—>true 不符合—>false 语法: 正则.test(字符串) 2.捕获 语法:正则.exec(字符串)

元字符

组成 1.元字符:正则表达式的规则符号 2.修饰符:修饰整个正则表达式的符号

1.普通元字符

1.\d ------ 表示一位(一个)数字(0~9) 2. \D ------ 表示 一位 非数字(除了0~9) 3. \w ------ 表示 数字(0~9)字母(a-zA-Z)下划线(_) 其中的 一个 4.\W ------ 表示 除了 数字(0~9)字母(a-zA-Z)下划线 这些的某一个字符 5. \s ------ 表示 一位 空白字符 6. \S ------ 表示 一位 非空白字符 7.. ------ 表示 一位 非换行的任意字符 8.\------ 表示转义符 有意义的符号, 转为没有意义的文本 没有意义的文本, 转为有意义的符号

2.边界元字符

1.^ ------ 表示开头 2.$ ------ 表示结尾

3.限定元字符

表示前边一个符号代表的内容出现多少次 1.* ------ 表示0~正无穷次 2. +------ 表示 1~正无穷次 3. ? ------ 表示 0~1次 4. {n} ------ 表示 限定 n 次, 不能多也不能少 5. {n,} ------ 表示 最少 n 次 6. {n,m} ------ 表示 最少 n 次, 最多 m 次

4.特殊符号

1.()

当成一个整体单独捕获(欠着)

2.|

或 字符为 或 左右两边的 都行

3.[ ]

包含 注意: [abcd] 包含其中一个即可 [] 实际代表的就是 一位字符

4.[^]

非 注意: [^abcd] 只要不是他们四个中的一个即可 [^] 实际代表的就是 一位字符

5.-

到(至) 通常与 包含 和 非 一起使用 [0-9] 数字 0~9 中的一个 \d [^0-9] 不是数字 0~9 中的 一个 \D [a-z] 小写 字母a~z [A-Z] 大写 字母A~Z

修饰符

书写在正则表达式的外面,用于描述整个正则表达式

i 忽略大小写g 全局

正则表达式----捕获exec

语法:正则.exec(字符串)

没有捕获到: 直接返回一个 null捕获到 2.1 没有小括号也没g 的情况, 永远捕获的都是下标0开始的第一个符合条件的 2.2 没有小括号, 但是有修饰符g 的情况 第一次捕获完成后, 第二次开始的时候, 会从第一次捕获结束的位置开始 第三次开始的时候, 会从第二次捕获结束的位置开始 当所有的匹配项都匹配完成后, 会返回一个 null 当再次捕获的时候, 就从下标0重新开始 2.3有小括号,下标0 还是我们正常捕获到的内容,从 下标1开始, 就是每个小括号捕获到的内容

正则的两大特性

1.懒惰 正常捕获字符串的时候, 每次都从下标0开始 解决方式: 给正则添加一个修饰符 g 2.贪婪 每次在捕获的时候, 会尽可能的多捕获一些东西 解决方法: 在原有的修饰符后添加一个 ? 然后相当于开启非贪婪模式

正则与字符串方法

好多元字符元字符

密码强度验证案例

好文推荐

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: