<SCRIPT LANGUAGE="JavaScript">
<!--
vstr = "[1]oa.gif<br>[2]2.gif<br>[3]list.jpg<br>";
vary = vstr.split("<br>");
document.write (del("2"));
function del(id){
  var returnValue = "";
  for (var i =0; i < vary.length; i++)
  {
    if(vary[i].indexOf("["+ id + "]") == -1){
returnValue += (vary[i] + "<br>");
}
  }
  return returnValue;
}
//-->
</SCRIPT>

解决方案 »

  1.   

    var bb=vstr.split("<br>");
    var i;
    var str1;
    if(i==1){
       str1=bb[1]+"<br>"+bb[2]+"<br>";
    }else if(i==2){
       str1=bb[0]+"<br>"+bb[2]+"<br>";
    }else if(i==3){
       str1=bb[0]+"<br>"+bb[1]+"<br>";
    }
      

  2.   

    http://community.csdn.net/Expert/TopicView.asp?id=4557857
      

  3.   

    to:meizz(梅花雪):
     我对javascript很不熟悉,对正则更是一知半解,昨天你帮我写的那个非常好
      

  4.   

    vstr="[1]oa.gif<br>[2]2.gif<br>[3]list.jpg<br>"
    var i;//参数vstr.replace( new RegExp("\[" +i +"\]\w+\.\w+<br>"), "" );这样可以吧
      

  5.   

    function test(num) {
      var arr=["oa.gif", "2.gif", "list.jpg"];
      arr.splice(num-1, 1);
      return arr.join("<br \/>")+"<br \/>";
    }var vstr;
    vstr=test(1);
    vstr=test(2);
    vstr=test(3);
      

  6.   

    to:meizz(梅花雪):
    昨天是跟今天的表达式稍微有点不同,我太菜了,弄了好久就是变通不过来
      

  7.   

    var vstr="[1]oa.gif<br>[2]2.gif<br>[3]list.jpg<br>";
    function mm(n)
    {
        //var reg1=new RegExp("\<b\>","g");
        //vstr = vstr.replace(reg1,",");
        var reg=new RegExp("(\<br\>)?\\["+ n +"\\][^(\<br\>)]+", "g");
        return vstr.replace(reg, "").replace(/^(\<br\>)*|(\<br\>)*$/,""); 
        //var vstr="[1]oa.gif,[2]2.gif,[3]list.jpg";
        //var reg=new RegExp(",?\\["+ n +"\\][^,]+", "g");
        //return vstr.replace(reg, "").replace(/^,*|,*$/,""); 
    }
    alert(mm(1));
    alert(mm(2));
    alert(mm(3));
      

  8.   

    不好意思,没看清楚问题已经有变化:<SCRIPT LANGUAGE="JavaScript">
    <!--
    function mm(s, n)
    {
        var reg=new RegExp("\\["+ n +"\\][^<>]+<br>", "g");
        return s.replace(reg, ""); 
    }vstr = "[1]oa.gif<br>[2]2.gif<br>[3]list.jpg<br>";
    alert(mm(vstr, 1));
    alert(mm(vstr, 2));
    alert(mm(vstr, 3));
    //-->
    </SCRIPT>
      

  9.   

    var vstr="[1]oa.gif<br>[2]2.gif<br>[3]list.jpg<br>";
    function mm(n)
    {
        var reg=new RegExp("(<br>)?\\["+ n +"\\][^(<br>)]+", "g");
        return vstr.replace(reg, "").replace(/^(<br>)*|(<br>)*$/,""); 
    }
    alert(mm(1));
    alert(mm(2));
    alert(mm(3));
      

  10.   

    to: mingxuan3000(铭轩) 你的正则有问题,var vstr="[1]boa.gif<br>[2]b2.gif<br>[3]blist.jpg<br>";这个字符串你带进去试试
      

  11.   

    首先表示非常的感谢vstr = "[1]oa.gif&nbsp;&nbsp;<a href='#' onclick='javascript:deldown(1);return false;'>删除</a><br>[2]2.gif&nbsp;&nbsp;<a href='#' onclick='javascript:deldown(2);return false;'>删除</a><br>[3]list.jpg&nbsp;&nbsp;<a href='#' onclick='javascript:deldown(3);return false;'>删除</a><br>";
    用到上面的正则又不管用了
      

  12.   

    why? 我是修改你的正则
    我目前在学习正则
      

  13.   

    ro: mingxuan3000(铭轩) 问题出在这 [^(<br/>)]+ 这个方括号里的非,不是对<br/>这个整体,而是针对这个“<br/>”包含的每单个字符。<SCRIPT LANGUAGE="JavaScript">
    <!--
    function mm(s, n)
    {
        var reg=new RegExp("\\["+ n +"\\].+?<br/>", "g"); //这个要求高版本浏览器 IE5.5+
        return s.replace(reg, ""); 
    }vstr = "[1]oa.gif&nbsp;&nbsp;<a href='#' onclick='javascript:deldown(1);return false;'>删除</a><br/>[2]2.gif&nbsp;&nbsp;<a href='#' onclick='javascript:deldown(2);return false;'>删除</a><br/>[3]list.jpg&nbsp;&nbsp;<a href='#' onclick='javascript:deldown(3);return false;'>删除</a><br/>";
    alert(mm(vstr, 1));
    alert(mm(vstr, 2));
    alert(mm(vstr, 3));
    //-->
    </SCRIPT>