美文网首页
理解正则表达式的字面量形式和构造函数形式

理解正则表达式的字面量形式和构造函数形式

作者: web_柚子小记 | 来源:发表于2019-12-30 15:06 被阅读0次
    1.字面量的参数不使用引号,而构造函数的参数使用引号;
    2.字面量形式提供正则表达式的编译状态,而构造函数提供了表达式的运行时状态;

    举例说明:
    表达式: /${browserType}\:([\w\W]*?)\./
    构造函数: new RegExp(${browserType}\\:([\\w\\W]*?)\\.)
    表达式不接收传参而构造函数接收传参

    字面量形式和构造函数的相互转化:

    当使用构造函数创造正则对象时,需要常规的字符转义规则(在前面加反斜杠 \)。比如,以下是等价的:
    var re = new RegExp("\w+");
    var re = /\w+/;

    .replace(),脚本中使用 1 和2 指明括号里先前的匹配

    var re = /(\w+)\s(\w+)/;
    var str = "John Smith";
    var newstr = str.replace(re, "2,1");
    print(newstr);

    .match方法,依次输出匹配结果、括号1匹配结果、括号2匹配结果...

    "safari:11.1".match(/(safari):([\w\W]*?)./)
    // ["safari:11.", "safari", "11"]

    相关文章

      网友评论

          本文标题:理解正则表达式的字面量形式和构造函数形式

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