js正则表达式复习

    技术2022-05-20  35

    创建一个正则表达式

    第一种方法:

    var reg = /pattern/;

    第二种方法:

    var reg = new RegExp('pattern'); reg = /(/w)(/w)/2/1/; str='woow'; execReg(reg,str); reg = /^(b|c).+/; str='bbs.blueidea.com'; execReg(reg,str);

    使用形如(?:pattern)的正则就可以避免保存括号内的匹配结果。例如:

    reg = /^(?:b|c).+/; str='bbs.blueidea.com'; execReg(reg,str);

    可以看到返回的结果不再包括那个括号内的字正则表达式多匹配的内容。

    同理,反向引用也不好使了:

    reg = /^(b|c)/1/; str='bbs.blueidea.com'; execReg(reg,str);

    返回bb,b。bb是整个正则表达式匹配的内容,而b是第一个子正则表达式匹配的内容。

    reg = /^(?:b|c)/1/; str='bbs.blueidea.com'; execReg(reg,str);

    返回null。由于根本就没有记录括号内匹配的内容,自然没有办法反向引用了。


    最新回复(0)