正则表达式

本文详细介绍了正则表达式的创建、匹配与捕获方法,包括元字符、限定符和特殊字符的使用。讲解了如何进行贪婪与非贪婪匹配,并列举了常见的正则表达式标识符。此外,还探讨了在实际应用中如何使用正则表达式进行字符串验证和内容提取。
摘要由CSDN通过智能技术生成

正则表达式的创建

const 变量名=/正则表达式/

正则表达式的两个方法

1.匹配:验证字符串是不是符合规则

正则.test(要匹配的字符串)
符合返回true,反之返回false;

2.捕获:从字符串中获取符合规则的那一部分字符串

正则.exec(要获取的字符串)
没有符合的字符串:返回Null;
有符合的字符串:

      1.基础捕获:返回一个数组,不管有多少个片段都从第一个开始捕获,不管捕获多少次都只返回第一次捕获的片段
      2.有()时,返回一个数组,分别是小括号的单独捕获
      3.有全局标识符时,匹配或者捕获的时候只找第一个;第二次捕获从第一次捕获的结束位置开始;如果找不到就返回Null,再后面一次又回到开头开始捕获
  1. 返回一个数组
  2. [asd]是捕获出来的片段
  3. 只捕获第一组符合的片段

元字符

  • \s表示一个空格
  • \S表示一个非空格
  • \t表示一个制表符(与空格区别)
  • \d表示一个数字
  • \D表示一个非字符
  • \w表示数字字母下划线三选一
  • \W表示非数字字母下划线
  • (.)表示字符串里要有一个非换行内容
  • ^表示以 开头( ^\d 表示以字母开头)
  • $表示以 结尾
  • (^\d$ )表示以数字开头然后结束,只存在一个数字
限定元字符(只修饰前面一个字符)
  • *表示存在多个0~多个组成的片段
  • +表示出现1~多个
  • ?表示出现0~1次
  • {n}表示出现n次
  • {n, }表示出现n到多次
  • {n,m}表示出现n到m次
正则的贪婪和非贪婪
  • 贪婪:在捕获的时候尽量捕获最多
  • 非贪婪:在表达式后家一个?,以最少标准捕获
正则的特殊字符
  • ()1.表示整体 2.表示单独捕获(从左到右每个小括号依次是数字里从[1]开始的内容)
  • (?:)表示整体匹配但不捕获
  • /占位或,表示前面的或者后面的符合匹配结果
  • [ ] 表示括号里面任意一个都行
  • [^]表示任意一个非括号里的都行
  • - 表示从一个字符到另一个字符,ASCII码必须是连续的,与[]连用
正则的标识符
  • i 表示忽略大小写
  • g 表示全局 匹配或者捕获的时候只找第一个;第二次捕获从第一次捕获的结束位置开始;如果找不到就返回Null,再后面一次又回到开头开始捕获
  • y 表示粘性全局 第一次捕获必须从索引0开始就拿到对应结果,第二次必须是从第一次结束位置开始
    表示方法:在正则表达式后面添加
    new RegExp(‘abcd’,‘igy’)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值