RegExp.escape, 将 RegExp.escape 添加到ECMAScript标准的建议

分享于 

3分钟阅读

GitHub

  繁體 雙語
Proposal for adding RegExp.escape to the ECMAScript standard
  • 源代码名称:RegExp.escape
  • 源代码网址:http://www.github.com/benjamingr/RegExp.escape
  • RegExp.escape源代码文档
  • RegExp.escape源代码下载
  • Git URL:
    git://www.github.com/benjamingr/RegExp.escape.git
    Git Clone代码到本地:
    git clone http://www.github.com/benjamingr/RegExp.escape
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/benjamingr/RegExp.escape
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    RegExp.escape 建议

    RegExp.escape 方法添加到ECMAScript标准的建议。

    形式规范

    状态

    这里建议是一个阶段 0 ( 说明) 提案,正在等待实现和更多输入。 有关如何参与的问题,请参见

    动机

    通常情况下,我们希望在字符串中构建正则表达式,而不将特殊字符处理为特殊的正则表达式。 例如如果要替换字符串的所有匹配项 let text ="Hello." 我们从用户那里得到的我们可能想做 ourLongText.replace(new RegExp(text,"g")) 但是,这将匹配 . 与任何字符,而不是将它的与点匹配。

    这是通常需要的功能,从今年的可以看出,这是我们讨论线程的。 标准化它对开发人员非常有用,并且避免了它们可以能创建的不足以不会丢失边缘。

    建议的解决方案和用法示例

    我们建议添加 RegExp.escape 函数,这样字符串可以被转义,以便在 正规表达式 中使用:

    var str =prompt("Please enter a string");
    str =RegExp.escape(str);alert(ourLongText.replace(newRegExp(str, "g")); // handles reg exp special tokens with the replacement.
     
      
    正则表达式   
       
    escape   
    (   
      
    "   
    Fox   
    "   
      
    ) ;   
      
    //  
    Quick Brown Fox"   
      
    正则表达式   
       
    escape   
    (   
      
    "   
    买它,用它,打破它。 修复它。   
    "   
      
    )   
      
    //  
    ,用它,打破它。 修复它"   
      
    正则表达式   
       
    escape   
    (   
      
    "   
    ( *。* )   
    "   
      
    ) ;   
      
    //  
    ( *。* )""   
      
    正则表达式   
       
    escape   
    (   
      
    "   
       
    "   
      
    )   
      
    //  
       
      
    正则表达式   
       
    escape   
    (   
      
    "   
      
     

    STA  添加  STAN  PROP  standard  ecma  
    相关文章