正则表达式笔记

目录

01正则的基本使用

[02 正则的五大类的使用](#02 正则的五大类的使用)

[03 正则边界的使用](#03 正则边界的使用)

[04 正则量词的使用](#04 正则量词的使用)

[05 正则表达式案例](#05 正则表达式案例)

[06 字符串中关于正则的一些方法](#06 字符串中关于正则的一些方法)


01正则的基本使用

正则分类:

普通字符+元字符

创建正则对象

1.new创建

var reg=new RegExp(/正则规则/)

2.字面量创建

var reg=/正则规则/

02 正则的五大类的使用

1.预定义类

var reg= /./ ; 匹配任意字符(除了回车和换行)

var reg=/\d/ ; 匹配数字字符

var reg=/\D/ ; 匹配的是非数字字符

var reg=/\s/ ; 空白字符 \r \n \t \f

var reg=/\S/ ; 匹配非空白字符

var reg=/\w/ ; 单词字符 数字 大小写字母 下划线

var reg=/\W/ ;非单词字符

重点是: \d \w

2.简单类

var reg=/[abc]/; abc其中之一

var reg=/[ABC]/;ABC其中之一 严格区分大小写

3.负向类

var reg=/[^abc]/ 除了abc其他所有

4.范围类

var reg=/[a-z]/ ; a到z之间小写字母其中之一都可以

5.组合类

var reg=/[a-z\d]/ 包含中括号中内容之一即可

03 正则边界的使用

/^ 表示开头

$/ 表示结尾

/^$/ 表示固定匹配

例:

  1. var reg=/^\d[a-z]/ 表示数字开头 从第二个字符开始是a-z之间的任意字符

  2. var reg=/\w$/ 表示以单词字符 数字 大小写字母 下划线 任意一个结尾

3.var reg=/^[abc]$/ 表示abc只能出现之一

  1. var reg=/^\w\d/ 表示长度是2 第一位是单词字符 第二位是数字字符
04 正则量词的使用
  1. 预定义量词

* 0到任意次

? 0或者1次

  • 至少一次

2.自定义量词

{n} 恰好是n次

{n,} 至少n次

{n,m} n到m次 包含m次

例:

var reg=/^[abc]*$/; 表示abc可以出现0次到任意次

var reg=/^[abc]?$/;

表示abc只能出现0次或者1次返回ture 出现的次数超过一次就返回false

var reg=/^[abc]+$/; 表示abc至少出现一次

var reg=/^[abc]{3}$/; 表示abc出现的次数恰好是3次

var reg=/^[abc]{3,}$/; 表示abc出现的次数至少是3次

var reg=/^[abc]{3,5}$/;表示abc出现的次数在3到5之间返回true 字符串里只能有abc

05 正则表达式案例

1.验证手机号

要求第一位是1 第二位是3-9之间的任意数字 后九位数字任意

/^1[3-9]\d{9}$/

2.验证中文 使用unicode编码进行验证

// [\u4e00-\u9fa5]

3.匹配座机号

座机号分为

三位区号 010-88889999

四位区号0312-7891898

正则有|符号 表示多个正则在一起 只要匹配其中之一就可以了

三位区号的正则

/^0[12]\d-\d{8}$/

四位区号的正则

/^0\d{3}-\d{7}$/

座机号的正则:

/^0[12]\d-\d{8}\|\^0\\d{3}-\\d{7}/

06 字符串中关于正则的一些方法

g 表示整个字符串查找

i 表示忽略大小写

字符串中可以使用正则的方法:

1.替换:

str.replace(正则表达式,'新字符串') 表示值替换从头开始查找到的第一个

str.replaceAll(正则表达式,'新字符串') 表示替换全部

2.匹配

str.match(/正则表达式/g)

//将正则表达式匹配到的字符串放到伪数组中

str.matchAll(/\d+[a-z]+/g) //返回迭代器对象

相关推荐
Cc00108521 小时前
【AI学习笔记】用AI生成spring boot + redis
spring boot·笔记·学习·ai编程
繁花与尘埃1 小时前
列表标签之有序标签(本文为个人学习笔记,内容整理自哔哩哔哩UP主【非学者勿扰】的公开课程。 > 所有知识点归属原作者,仅作非商业用途分享)
笔记·学习
Starry_hello world1 小时前
Linux 进程地址空间
linux·笔记·有问必答
junnhwan1 小时前
【苍穹外卖笔记】Day05--Redis入门与店铺营业状态设置
java·数据库·redis·笔记·后端·苍穹外卖
Zzz 小生1 小时前
**编程基础学习(二)-C语言变量、控制结构和函数
笔记·学习
金水谣1 小时前
10.12考研笔记
笔记
fanged1 小时前
HarvardX TinyML小笔记3(番外6:视觉探测)(TODO)
笔记
摇滚侠2 小时前
Spring Boot 3零基础教程,Spring Boot 特性介绍,笔记02
java·spring boot·笔记
武清伯MVP2 小时前
阮一峰《TypeScript 教程》学习笔记——基本用法
笔记·学习·typescript
要做朋鱼燕2 小时前
STM32与W25Q64 SPI通信全解析
笔记·嵌入式·hal·spi