美文网首页
正则表达式01

正则表达式01

作者: 正直走 | 来源:发表于2020-12-09 18:43 被阅读0次

    正则表达式根据李炎灰视频教程总结

    1. 创建正则表达式有两种方式

      1. 字面量的方式

        let box = 'box';
        let patten = '/box/ig'
        patten.test(box);
        // 匹配则为true否则为false
        
        
      2. new的方式

        let box = 'box';
        New patten = ('box','ig')
        patten.test(box);
        // 匹配则为true否则为false
        
    2. i和g

      i代表不区分大小写进行匹配,g代表全局匹配而不是匹配第一个就停止
      
    3. test和exct

      patten.test(box);
      patten.exct(box);
      用test匹配与否所得结果是true和false;exct匹配与否所得的结果是一个数组
      
    4. 字符串对象提供的四种方法

      match // 返回pattern中的子串或null
      replace(pattern,replacement) // 用replacement替换pattern
      search(pattern) // 返回字符串中pattern开始的位置
      split(pattern) // 返回字符串按指定pattern拆分的数组
      
      1. match

        
        
        let pattern = /Box/ig
        let str = 'this is a box!that is a box!'
        str.match(patern)
        // 返回[box,box];
        
      2. search

        let pattern = /Box/ig
        let str = 'this is a box!that is a box!'
        str. search(patern)
        // 由于search返回的是第一个匹配的位置,所以设置全局是没有用也没有必要的
        // 若有匹配返回匹配的位置,若没有匹配则返回-1
        
      3. replace

        let pattern = /Box/ig
        let str = 'this is a box!that is a box!'
        str. replace(patern,Tom)
        //结果是'this is a Tom!that is a Tom!'
        
      4. split

        let pattern = /!/ig
        let str = 'this is a box!that is a box'
        str. split(patern,Tom)
        //结果是[this is a Tom,that is a Tom] 
        此方法其实和字符串的join基本相同
        
    5. 静态属性和示例属性

      1. 静态属性

        input短名$_  当前被匹配的字符串
        lestMatch短名$& 最后一个匹配字符串 
        lastParen短名$+ 最后一对圆括号内的匹配子串
        leftContext短名$`  最后一次匹配前的子串
        multiline短名$* 用于指定是否所有的表达式都用于多行的布尔值
        rightContext短名$` 在上次匹配之后的子串
        
        
        1. input

          let pattern = /box/ig
          let str = 'this is a box!that is a box'
          patten.test(str);
          alert(regExp.input)
          // 结果为'this is a box!that is a box'
          
        2. lestMatch

          let pattern = /box/ig
          let str = 'this is a box!that is a box'
          patten.test(str);
          alert(regExp.lestMatch)
          // 结果为'box'
          

    相关文章

      网友评论

          本文标题:正则表达式01

          本文链接:https://www.haomeiwen.com/subject/kylyottx.html