比如:
var a=/a/ig
var b=/b/ig
我想要的正则表达式是/ab/ig
怎么得到?
var c=a+b //这个肯定错的 结果是 /a/gi/b/gi 

解决方案 »

  1.   


    var a=/a/ig;
    var b=/b/ig;
    var c=a.source+b.source;//==>c=ab;
    如何整合两个正则,需要看两个正则的查询模式是否一样,如果a为gi,b为g,怎么整合?
      

  2.   

    假如不考虑g i m,都统一用gi,那么楼主的需求可以这么解决var a=/a/gi;
    var b=/b/gi;
    var c=new RegExp(a.source+b.source,'gi');
      

  3.   

    var test = "afdasdfASDFASDF";
                var str = /[a-z]+/g;
                var str1 = /[a-z]+/gi;
                var re = str.source + str1.source;
                alert(str.exec(test));
                alert(str1.exec(test));
                alert(re);测试了一下,当这样把两个正则合在一块后,就不是正则了,就变成字符串了。
      

  4.   

    谢谢,学习了。在w3cschool的正则的介绍中都没提到这个属性