• <var id="zvtmq"></var>
      <tt id="zvtmq"><pre id="zvtmq"></pre></tt>

      <font id="zvtmq"></font>

      <tt id="zvtmq"></tt>

        <var id="zvtmq"></var>
        <mark id="zvtmq"><pre id="zvtmq"><td id="zvtmq"></td></pre></mark>

        1. 
          

          <var id="zvtmq"><object id="zvtmq"><noscript id="zvtmq"></noscript></object></var><label id="zvtmq"><button id="zvtmq"><address id="zvtmq"></address></button></label>

            <tt id="zvtmq"><wbr id="zvtmq"></wbr></tt>
            <strike id="zvtmq"><output id="zvtmq"></output></strike>

          1. <del id="zvtmq"><wbr id="zvtmq"><meter id="zvtmq"></meter></wbr></del>

          2. <small id="zvtmq"></small>

            <code id="zvtmq"><rt id="zvtmq"></rt></code>
          3. <listing id="zvtmq"><object id="zvtmq"></object></listing>

                  广告

                  match()与exec()区别

                  2018-9-12 09:38| 作者: admin| 查看: 1621| 评论: 0|来自: 蚂蚁部落

                  关于两个方法的基本用法可以参阅一下两篇文章:

                  (1).正则表达式 exec()方法一章节。

                  (2).正则表达式match()方法一章节。

                  只要阅读上述两篇文章,并掌握各自用法,自然就很清楚它们之间的区别。

                  为了便于学习,本文再将两个方法的区别进行一下总结。

                  一.所属对象的不同:

                  这个区别最为简单明显。

                  match方法属于字符串对象,exec方法属于正则表达式对象。

                  代码实例如下:

                  [JavaScript] 纯文本查看 复制代码运行代码
                  let str="antzone"; 
                  let reg=/n/;
                  console.log(reg.exec(str));

                  exec方法的调用对象是正则表达式对象,方法的参数是字符串。

                  [JavaScript] 纯文本查看 复制代码运行代码
                  let str="本站url地址是www.pecf.tw"; 
                  let reg=/why/;
                  console.log(str.match(reg));

                  match方法由字符串对象调用,方法的参数是正则表达式。

                  二.方法返回结果的不同:

                  (1).非全?#21046;?#37197;:

                  当采用非全?#21046;?#37197;的时候,两个方法的返回值完全一样。

                  代码实例如下:

                  [JavaScript] 纯文本查看 复制代码运行代码
                  let str="antzoane"; 
                  let reg=/a(n)/;
                  console.log(str.match(reg));
                  console.log(reg.exec(str));

                  代码运行效果截图如下:

                  a:3:{s:3:\"pic\";s:43:\"portal/201809/12/094223yvochn7ddoe6ctfv.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

                  很明显,两个方法的返回值是一模一样的。

                  (2).全?#21046;?#37197;:

                  当为全?#21046;?#37197;的时候,返回结果出现很大不同。

                  match方法返回一个存放所有匹配内容的数组(无视子表达式的匹配)。

                  exex方法返回数组不会存储所有的匹配,仅存储第一个匹配到的内容(存储在数字第一个元素),第二个元素存储第一个子表达式匹配到的内容,第三个元素存储第二个子表达式匹配到的内容,以此类推。

                  [JavaScript] 纯文本查看 复制代码运行代码
                  let str="antzoane"; 
                  let reg=/a(n)/g;
                  console.log(str.match(reg));
                  console.log(reg.exec(str));

                  代码运行效果截图如下:

                  a:3:{s:3:\"pic\";s:43:\"portal/201809/12/094339kmsm5uchkmkdh5dt.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

                  运行效果截图印证了前面的理论阐述。全?#21046;?#37197;下,exec方法还可以与lastIndex属性配合使用。

                  lastIndex属性可以返回或者设置正则表达式将要开始的匹配的起始位置。

                  对match方法而言,lastIndex属性值始终为0。

                  [JavaScript] 纯文本查看 复制代码运行代码
                  let str="ant8zone"; 
                  let reg=/\d/g;
                  console.log(reg.exec(str));
                  console.log(reg.lastIndex);

                  代码运行效果截图如下:

                  a:3:{s:3:\"pic\";s:43:\"portal/201809/12/094414t3jknaisiwuis9mu.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

                  初始状态lastIndex属性值为0,正则表达式匹配到数字8,在字符串中的位置为3。

                  那么下一次就是从字符"z"处开始匹配,"z"的位置是4。

                  对于match方法而言,lastIndex值始终为0,基本没啥实?#35270;?#29992;意义。

                  1

                  鲜花

                  握手

                  雷人

                  路过

                  鸡蛋

                  刚表态过的朋友 (1 人)

                  最新评论

                  返回顶部
                1. <var id="zvtmq"></var>
                    <tt id="zvtmq"><pre id="zvtmq"></pre></tt>

                    <font id="zvtmq"></font>

                    <tt id="zvtmq"></tt>

                      <var id="zvtmq"></var>
                      <mark id="zvtmq"><pre id="zvtmq"><td id="zvtmq"></td></pre></mark>

                      1. 
                        

                        <var id="zvtmq"><object id="zvtmq"><noscript id="zvtmq"></noscript></object></var><label id="zvtmq"><button id="zvtmq"><address id="zvtmq"></address></button></label>

                          <tt id="zvtmq"><wbr id="zvtmq"></wbr></tt>
                          <strike id="zvtmq"><output id="zvtmq"></output></strike>

                        1. <del id="zvtmq"><wbr id="zvtmq"><meter id="zvtmq"></meter></wbr></del>

                        2. <small id="zvtmq"></small>

                          <code id="zvtmq"><rt id="zvtmq"></rt></code>
                        3. <listing id="zvtmq"><object id="zvtmq"></object></listing>

                                快乐10分破解如何计算
                              1. <var id="zvtmq"></var>
                                  <tt id="zvtmq"><pre id="zvtmq"></pre></tt>

                                  <font id="zvtmq"></font>

                                  <tt id="zvtmq"></tt>

                                    <var id="zvtmq"></var>
                                    <mark id="zvtmq"><pre id="zvtmq"><td id="zvtmq"></td></pre></mark>

                                    1. 
                                      

                                      <var id="zvtmq"><object id="zvtmq"><noscript id="zvtmq"></noscript></object></var><label id="zvtmq"><button id="zvtmq"><address id="zvtmq"></address></button></label>

                                        <tt id="zvtmq"><wbr id="zvtmq"></wbr></tt>
                                        <strike id="zvtmq"><output id="zvtmq"></output></strike>

                                      1. <del id="zvtmq"><wbr id="zvtmq"><meter id="zvtmq"></meter></wbr></del>

                                      2. <small id="zvtmq"></small>

                                        <code id="zvtmq"><rt id="zvtmq"></rt></code>
                                      3. <listing id="zvtmq"><object id="zvtmq"></object></listing>

                                            1. <var id="zvtmq"></var>
                                                <tt id="zvtmq"><pre id="zvtmq"></pre></tt>

                                                <font id="zvtmq"></font>

                                                <tt id="zvtmq"></tt>

                                                  <var id="zvtmq"></var>
                                                  <mark id="zvtmq"><pre id="zvtmq"><td id="zvtmq"></td></pre></mark>

                                                  1. 
                                                    

                                                    <var id="zvtmq"><object id="zvtmq"><noscript id="zvtmq"></noscript></object></var><label id="zvtmq"><button id="zvtmq"><address id="zvtmq"></address></button></label>

                                                      <tt id="zvtmq"><wbr id="zvtmq"></wbr></tt>
                                                      <strike id="zvtmq"><output id="zvtmq"></output></strike>

                                                    1. <del id="zvtmq"><wbr id="zvtmq"><meter id="zvtmq"></meter></wbr></del>

                                                    2. <small id="zvtmq"></small>

                                                      <code id="zvtmq"><rt id="zvtmq"></rt></code>
                                                    3. <listing id="zvtmq"><object id="zvtmq"></object></listing>

                                                            高频彩票兑奖有效期 重庆幸运农场封盘时间 澳门赌场789399com 足球14场胜负彩 乒乓球规则 富宝三肖中特 内蒙古11选5前三组走势图 广东26选5有几个奖 天津快乐十分实时开奖 山东十一选五分析软件 新浪彩票数据 足球比分网结果 香港马会内部传真一波中特免费下载 2019年马会透码 排列五和值走势图分析