Amande

JS模式匹配中exec,match用得非常多,所以掌握其用法对我们进行字符串的处理帮助非常大

1.exec的定义其用法

       exec与match主要的不同是,exec是正则表达式里面的方法.所以用的时候一定不要用字符串来调用。

       看下面这段代码,输出多少呢?

var str= "hello world" ;
var p=/(\w){5}/g;
console.log(p.exec(str))           //["hello", "o", index: 0, input: "hello world"]

var str= "hello world" ;
var p=/(\w){4}(\w)/g;              // ["hello", "l", "o", index: 0, input: "hello world"]
console.log(p.exec(str))

     exec匹配的第一个元素是符合匹配条件的第一个字符串,后面的元素是分组的元素!

     前面一段代码分组只有一个(\w)所以后面输出了一个"o"

     后面一段代码分组有二个(\w)(\w)所以后面输出了一个"l"  "o"

     正则表达式中有没有g对exec没有任何影响,它的返回值固定是这个格式

2.match的定义其用法

     match有一点特殊,正则表达式要区分有没有g的条件

      1.在有g的条件下    

var str= "hello world" ;
var p=/\w{5}/g;
console.log(str.match(p))          //["hello", "world"]         

 

  所有符合条件的会放入到一个数组里面去

      2.在没有g的条件下 

 

 

       返回的值跟exec一致

 

结: 我们记的时候,就只记二个就行了,exec返回的值和有G的时候的match返回的值 

分类:

技术点:

相关文章:

  • 2021-11-14
  • 2022-12-23
  • 2022-12-23
  • 2021-06-26
  • 2022-02-26
  • 2021-07-20
猜你喜欢
  • 2022-03-07
  • 2022-02-06
  • 2022-03-02
  • 2022-02-13
  • 2021-12-18
  • 2021-12-13
  • 2022-12-23
相关资源
相似解决方案