zoukankan      html  css  js  c++  java
  • js-str的replace函数参数

    之前一直理解的字符串的匹配参数是从左括号一次传递,最后俩分别是匹配到的字符开始的位置,和整个的字符串。。。

    其具体参数是什么,括号中没有匹配到的是否传参???

    看了underscore模版引擎写法,有个想法是

    只要有括号就会传参数,如果正则中匹配整体,但是该括号中的可选没匹配到的话,应该是undefined,

    测试结果验证想法正确。

    1 var regs = /(dd)|(fe)/g;
    2 'denddennnenfeen'.replace(regs, function(){
    3     console.log(arguments)
    4 })

    { '0': 'dd',

      '1': 'dd',

      '2': undefined,

      '3': 3,

      '4': 'denddennnenfeen' }

    { '0': 'fe',

      '1': undefined,

      '2': 'fe',

      '3': 11,

      '4': 'denddennnenfeen' }

    从运行结果可以看出,这个参数对象分别给出的所有匹配,其实每一个括号的值都传递进来了。如果该匹配项不包含的括号,则该括号项为空

  • 相关阅读:
    C语言I博客作业04
    C语言II博客作业03
    C语言II博客作业02
    C语言II博客作业01
    学期总结
    C语言I博客作业08
    C语言I博客作业07
    C语言I博客作业06
    C语言I博客作业05
    C语言I博客作业04
  • 原文地址:https://www.cnblogs.com/jingwensophie/p/4742183.html
Copyright © 2011-2022 走看看