06-javascript正则表达

1、创建方式

1、字面量创建方式

var reg = /abc/

2、内置构造函数

var reg = new RegExp("abc")

2、 test 验证字符串是否符合规则

//返回布尔值,符合规则,返回 true  否则  false
var str = "abc"
var reg = /abc/
var res = reg.test(str)
console.log(res)//true

3、元字符

  • 1、\d 有一个数字
  • 2、\D 一个非数字
  • 3、\s 一个空格
  • 4、\S 一个非空格
  • 5、\w 数字字母下划线
  • 6、\W 非数字字母下划线
  • 7、. 除了换行以外的其他字符

4、限定符

  • 1、 * 0 ~ 正无穷次
  • 2、 + 1 ~ 正无穷次
  • 3、 ? 0 ~ 1
  • 4、{ n } 出现 n 次
  • 5、{ n, } 出现 n ~ 正无穷次
  • 6、{ n,m } 出现 n ~ m 次

5、边界符

  • ^ 以……开头
  • $ 以……结尾

6、其他符号

  • \ 转义符 :本身没有特殊含义的东西 加上 \ 就有了特殊含义,本身有特殊含义的东西,加上 \ 就没有了特殊含义
  • ( ) 把一堆东西当做一个整体
  • | 或者,占位符
  • [ ]里面的东西任选一个
  • - 多少到多少
  • [^]

7、正则的方法

  • 1、test() 返回值是布尔值
  • 2、exec( ) 匹配字符串里面符合规则的字符,返回值是一个数组 数组的第 0 项就是满足规则的字符,如果找不到,就返回 null 当你再次匹配的时候,又从头开始匹配。
var reg = /\d{3}/g
        var str = "sada123asdasdas456asdasf789asdas452"
        var res = reg.exec(str)
        console.log(res[0])//123
        var res = reg.exec(str)
        console.log(res[0])//456
        var res = reg.exec(str)
        console.log(res[0])//789
        var res = reg.exec(str)
        console.log(res[0])//452
        var res = reg.exec(str)
        console.log(res)//null
        var res = reg.exec(str)
        console.log(res[0])//123

8、标识符

  • g 全局
  • i 忽略大小写

9、配合正则使用的字符串的方法

1、replace( ) 替换

var str = "sdSMsdadaSMsdaSM"
var reg = /SM/g
var res = str .replace(reg,"**")
console.log(res) //sd**sdada**sda**

2、match( ) 把符合规则的字符串提取出来,放到数组里面去

var str = "sad123asdad456asdasd789asda456"
var reg = /\d{3}/g
var res = str.match(reg)
console.log(res)  //["123","456","789","456"]

3、search( ) 搜索

var str = 'dghsag123fhdsf321cjskahjfd456sakhd789djsa'
var reg = /\d{3}/
var res = str.search(reg)
console.log(res)  //6   返回是下标
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值