js正则表达式

正则表达式都是操作字符串的,由特殊字符与普通字符组成。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

var pattern = /js/;
var str = "I love js"
var pattern = new RegExp('js', 'i');
console.log(pattern.test(str));
console.log(pattern.exec(str));

用变量创建模式
在这里插入图片描述
exec方法有input 就是输入的str
index就是开始匹配到的索引

修饰符

在这里插入图片描述
. 匹配除换行符以外的所有字符

语法

个数

在这里插入图片描述
{2} 匹配两个 {1,2}匹配1个或者2个 {1,3} 匹配1个或者3个
{1,} 匹配至少1个 ?用法等于 {0,1}
在? * + 后面加 ? 将贪婪匹配转为非贪婪匹配 只匹配一次
在这里插入图片描述
在这里插入图片描述

选择

| 选择匹配 a | ab 匹配a或者ab 从左边先开始匹配 从上到下

分组

在这里插入图片描述
将ab看为一个整体
在这里插入图片描述
在前加 ?: ab就不会被捕获 否则会输出 abc ab
在这里插入图片描述
从左边括号开始捕获 abc bc c

在这里插入图片描述
使用\1代表之前第一个分组中的内容 不属于分组
输出:
在这里插入图片描述

分组的应用

在这里插入图片描述
在这里插入图片描述

前瞻性匹配

在这里插入图片描述
只匹配后面为script的java
在这里插入图片描述
只匹配后面不为script的java

首尾匹配

^ $
在这里插入图片描述
只匹配数字

单词边界 \b

通俗一点讲,如果存在字符\w和\W相邻,那么这两个字符之间就有单词边界

全局匹配

在这里插入图片描述
输出结果:
在这里插入图片描述
test机制类似 返回true与false
第一行匹配第一个js 第二行匹配第二个 第四行返回 null 因为匹配完了
第五个又开始从第一个开始
但是第五个又是第0个索引 lastIndex重置为0

lastIndex:lastIndex从字面上来讲就是最后一个索引,实际上它的意思是正则表达式开始下一次查找的索引位置,第一次的时候总是为0的,第一次查找完了的时候会把lastIndex的值设为匹配到得字符串的最后一个字符的索引位置加1,第二次查找的时候会从lastIndex这个位置开始,后面的以此类推。如果没有找到,则会把lastIndex重置为0。

在这里插入图片描述
在这里插入图片描述
非全局匹配 lastIndex均为0

RegExp对象

在这里插入图片描述
1与2类似 返回字符串 3 返回他本身
在这里插入图片描述
1 判断有没有i
2 判断有没有g
3 判断有没有m
Pattern.source 返回字面量形式的字符串

在这里插入图片描述
匹配一个
在这里插入图片描述
input只有在调用了exec 或者test 后才能输出 就是输入的字符串str 别名 $_
lastMatch 最近一次匹配的字符 别名 $&在这里插入图片描述
Left 匹配的字符 左边的字符
Paren 上次匹配到的子选项 j 分组
RegExp .$1 获取第一个分组 最多可以有9个
在这里插入图片描述
search返回 模式在字符串中匹配的位置 5 没有匹配到 返回-1
Search与 全局匹配g 关系不大 match 关系大 全局匹配在search中没用
在这里插入图片描述
match与exec 相像 匹配成功返回 否则返回null
Match 全局匹配时 一次返回所有匹配的
在这里插入图片描述
在这里插入图片描述

拆分

在这里插入图片描述
加不加g不重要
在这里插入图片描述
在这里插入图片描述

replace

在这里插入图片描述
在这里插入图片描述
引用
在这里插入图片描述
几个字就变成几个 *

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值