正则表达式

正则表达式创建

  1. 字面量

    var reg = /abcdefg/ 
            console.log(reg)
    
  2. 构造函数

    var reg2 = new RegExp('abcdefg')
            console.log(reg2)
    

元字符

元字符描述
.查找单个字符,除了换行和行结束符
\w查找单词字符
\W查找非单词字符
\d查找数字
\D查找非数字字符
\s查找空白字符
\S查找非空白字符

限定符

量词描述
n+匹配任何包含至少一个 n 的字符串
n*匹配任何包含零个或多个 n 的字符串
n?匹配任何包含零个或一个 n 的字符串
n{x}匹配包含 x 个 n 的序列的字符串
n{x,y}匹配包含最少 x 个、最多 y 个 n 的序列的字符串
n{x,}匹配包含至少 x 个 n 的序列的字符串

边界符

量词说明
^匹配开头,在多行检测中,会匹配一行的开头
$匹配结尾,在多行检测中,会匹配一行的结尾

特殊符号

量词说明
[]表示是[]里面的任意一个都行
[^]反字符集合,表示写在[]之外的任意一个都行
-范围,比如:a-z表示从字母a到字母z都可以
或者,正则里面的a|b 表示字母a或者b都可以

标识符

量词说明
i比如:/\w/i 就是匹配的时候不去区分大小写
g比如:/\w/g 就是全局匹配字母数字下划线

正则表达式的方法

  1. test

​ == 用来检测字符串是否符合我们正则的规则的

​ == 语法: 正则.test(字符串)

​ == 返回值:布尔值boolean

  1. exec

​ == 把字符串中符合条件的内容捕获出来

​ == 语法:正则.exec(字符串)

​ == 返回值:把字符串中符合正则要求的第一项以及一些其他信息,以数组的形式返回,如果没有匹配的返回null

​ == 全局匹配和非全局匹配有区别

​ + 如果是非全局匹配,只能匹配第一项

​ + 如果是全局匹配,就能依次匹配第一项,第二项,…

字符串方法

  1. search

    == 是查找字符串中是否有满足正则条件的内容

    == 语法:字符串.search(正则)

    == 返回值:有的话返回开始索引,没有返回-1

    == 是否是全局匹配不影响,永远返回符合条件的第一个的索引

  2. match

    == 找到字符串中符合正则条件的内容返回

    == 语法:字符串.match(正则)

    == 返回值:

    == 没有标识符g,是和exec方法一样的返回值

    == 有标识符g,是返回一个数组,里面是匹配到的每一项

  3. replace

    == 将字符串中符合正则条件的字符串替换掉

    == 语法:字符串.replace(正则,要替换成的字符串)

    == 返回值:替换好的字符串

    == 没有标识符g:只替换符合的第一项

    == 有标识符g:替换所有符合的项

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值