var regstr = /^\<[ab|c|ef](?=\ )?[\/\>|\>]/g;
if(html.match(regstr) != 0){
    alert(html);
}

解决方案 »

  1.   

    <script>
    var matches=["<ab>","</ab>","<cd>","<cd />","<ef poiuyt>"];
    var allowArray=["ab","c","ef"];
    for (var key in matches){
       var html = matches[key];
       for (var k in allowArray){
           var allowTag = allowArray[k];
       var reg = new RegExp('<\\/?'+allowTag+'(?:>| )');
       if(reg.test(html)){
    alert(html);
    break;
       }
         /*  var i = -1;
           if (i != 0) { i = html.indexOf('<'+allowTag+'>');}
           if (i != 0) { i = html.indexOf('<'+allowTag+' ');}
           if (i != 0) { i = html.indexOf('</'+allowTag+'>');}
           if (i == 0) {
               alert(html);
               break;
           }
       */
       }
    }
    </script>
      

  2.   

    应该是这个意思吧...
    var matches=["<ab>","</ab>","<cd>","<cd />","<ef poiuyt>"];
    var allowArray=["ab","c","ef"];
    for (var key in matches){
       var html = matches[key];
       for (var k in allowArray){
           var allowTag = allowArray[k];
       var reg = new RegExp("</?" + allowTag + "(>| )", "i");
       if(reg.test(html)){
       alert(html);
       break;
       }
       }
    }