正则表达式的两种模糊匹配(横向模糊匹配,纵向模糊匹配)快速理解

本文介绍了JS正则表达式中的两种模糊匹配模式:横向模糊匹配,其特点是匹配字符串长度不固定;以及纵向模糊匹配,关注于特定位置的字符可以有多种可能。通过实例解析了这两种匹配方式,帮助读者理解正则表达式的灵活性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JS正则表达式-基础(一)

正则表达式是匹配模式,要么匹配字符,要么匹配位置

1.两种模糊匹配模式

在正则表达式中如果都是精准匹配,那么正则表达式也不会这么受大众的追捧

最重要的是它可以模糊匹配,而模糊匹配又分两种

  1. 横向模糊匹配(不固定长度)
  2. 纵向模糊匹配(固定长度)

①横向模糊匹配

— 什么是横向模糊匹配?

**解释:**简单来说,一个正则可匹配的字符串的长度不是固定的,可以是多种情况的。

举例:规则/ab{2,5}c/它是以a开头c结尾,但中间会匹配b{2,5}==2到5个可视化如下:

image-20230204151832034

②纵向模糊匹配

— 什么是纵向模糊匹配?

**解释:**一个正则匹配的字符串,具体到某一位字符时,它可以不是某个确定的字符,可以有多种 可能。

也就是说,你的匹配规则长度其实是固定的,但是到了某个字符的时候不确定他是否是固定的。

举例:匹配/a[123]b/其中[123]所表示的是可以匹配到1,2,3中的其中一个

const reg = /a[123]b/
const string = 'a12b a1b a2b a3b a234b'
console.log(string.match(reg));
// 输出的结果:a1b,a2b,a3b

在其中a12b看似符合,但规则只允许有一个值,所有不能匹配到。可视化如下:

image-20230204153548670

总结:这两种匹配模式其实就可以涵盖正则表达式的规则模式,可以抽象的理解为,横向是在二维平面空间上x轴的延申,纵向是y轴的延申

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值