关于正则表达式的一些疑问、理解

/^(b|a)/=/^[ab]/

取首部为a或者b的字符(串)

/(^b|a)/

取为首部的b,或者其他任意位置的a;

/^|d/g

会匹配出所有d,以及一个位置为0的空值,共5个结果;当替换匹配出来的结果是,如替换为“@”,则替换后为:

@abccs@f@s@@|1233

字符串前多了一个@;

alert(attr.search(/^/)) 打印结果为0;alert(attr.search(/^a/)) 打印结果也为0;

/^ |d/g

前面一个空格的话,则只匹配出所有的d,共4个结果;

var attr = 'abccsdfdsdd|1233'

       `window.onload = function(){
        var a='atool chinaz caom';
        //var sClass='chinaz';
        //var reClass = new RegExp("(^|)" + sClass + "(|$)");
        var reClass=/(^| )chinaz( |$)/;
        //var reClass=new RegExp('^|chinaz|$');
        alert(a.match(reClass));`
原文地址:https://www.cnblogs.com/wjx91/p/5496730.html