正则regexp

在线演示工具
菜鸟正则语法提示备忘

三大作用

1、给定的字符串是否符合正则表达式的过滤逻辑(匹配)
2、可以通过正则表达式,从字符串中获取我们想要的特定部分(提取)
3、强大的字符串替换能力(替换)

三大元素:元字符、修饰符、量词

三大核心点

定锚点、去噪点、取数据,这三点是整个正则处理过程中的灵魂,
它贯穿整个正则撰写过程。

链接

() [] {}区别

  1. ()是为了提取匹配字符串的,表达式中有几个()就有几个相应的匹配字符串。

  2. [] 是定义匹配的单个字符的范围,比如[a-zA-Z0-9]表示相应位置
    的字符要匹配英文字符或数字。

  3. {} 一般是用来匹配的长度,格式为{n}、{n,m}、{n,}
    (ab){0,12}? 表示匹配0到12次但尽可能少

1、?匹配0次或1次。

2、匹配修饰符,当该字符跟在任何一个其他限制符
 (* 、+、?、 {n}、 {n,}、 {n,m})后面时,
匹配模式为非贪婪模式。非贪婪模式尽可能少的匹配所搜索的字符串, 
而默认的贪婪模式则尽可能多的匹配所搜索的字符串

?断言

// 前瞻:
exp1(?=exp2) 查找exp2前面的exp1
// 后顾:
(?<=exp2)exp1 查找exp2后面的exp1
// 负前瞻:
exp1(?!exp2) 查找后面不是exp2的exp1
// 负后顾:
(?<!exp2)exp1 查找前面不是exp2的exp1

例子

(abc|bcd|cde) 表示这一段是abc、bcd、cde三者之一,顺序也必须一致
(abc)*.test('') * 出现0次或多次 所以出现不出现都是ture
/(https?:\/\/)/g.test('http://') ?表示0次或1次
var str = 'Anna is {age} years old,Bob is {age} years old too';
var expr = /{.*}/g;
var expr = /{.*?}/g;
// 满足条件,就不再匹配了
console.log(str.replace(expr, '13'))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值