[code=JScipt]<script>
var a='start111111endstart222222endasdfasdfasdfakjsfhaksdf'+
'start333333endstart444444end66666666666sdfghsdfgsdg'
alert(a.match(/start.*?end/img).join("=").replace(/start/g,"").replace(/end/g,"").split("="))
</script> [/code]

解决方案 »

  1.   

    mingxuan兄,你给的答案很好,我试过了是可以的;
    但我想以传参数的形式实现,如下:
    var startstr = "start";
    var endstr = "end";
    var a='start111111endstart222222endasdfasdfasdfakjsfhaksdf'+ 
    'start333333endstart444444end66666666666sdfghsdfgsdg';
    alert(a.match("/" + startstr + ".*?" + endstr + "/img").join("||||").replace("/" + startstr + "/g","").replace("/" + endstr + "/g","").split("||||"));为何不通过啊?
    你写的那句是通过的,但在实际应用中可能这些开始和结束字符很多,比如像以下这样:
    <div class="dragTable" id="Cppe_Map_PayTeamReports_Manager_EEInfo">
    <div class="dragTable" id="Cppe_Map_PayTeamReports_Manager_BudgetTable">
    <div class="dragTable" id="Cppe_Map_PayTeamReports_Manager_TeamReport">
    那么开始字符就是<div class="dragTable" id="结束字符就是">
    能再指点一下吗?以参数形式写,而且要考虑到会包含html符号,该如何写?
    非常感谢!
      

  2.   

    参数形式?你的这个要用new RegExp  
    而且还要转义 ,如<
    现在没时间
      

  3.   

    js中的比较容易java就不会写了,正好楼主给了一个helloworld
      

  4.   

    var a='start111111endstart222222endasdfasdfasdfakjsfhaksdf'
         +'<333333><444444>66666666666sdfghsdfgsdg';
    function getInfo(source,start,end){
        var oReg=new RegExp(start+".*?"+end,"img");
        var oRegStart=new RegExp(start,"g");
        var oRegEnd=new RegExp(end,"g");    return source.match(oReg)
                     .join("=")
                     .replace(oRegStart,"")
                     .replace(oRegEnd,"")
                     .split("=");
    }alert(getInfo(a,"<",">"));
    alert(getInfo(a,"start","end"));
      

  5.   

    var re=/start(.+?)end/gi;
    就可以了,然后返回来的是一个数组
      

  6.   

    太棒了!
    xingqiliudehuanghun给出了正解!