补充一下,用的是javascript。
自己先up一下。

解决方案 »

  1.   

    <SCRIPT LANGUAGE="JavaScript">
    <!--
    var str = "myhead<head>item0\n<br>item1\n<br>item2\n<br>item3<end>myend";
    //"myhead<head>item0\n<br>item1<end>myend"
    var reg = /^(myhead<head>)(((\n<br>)?[^\n]+){2})[\s\S]*(<end>myend)$/;
    var s = str.replace(reg, "$1$2$5");
    alert(s);
    //-->
    </SCRIPT>
      

  2.   

    var s = str.replace(reg, "$1$2$5");
    是什么意思呢,meizz(梅花雪)解释一下吧。
      

  3.   

    $1...$9 属性
    返回九个在模式匹配期间找到的、最近保存的部分。只读。无论何时产生一个成功的带插入语的匹配,$1...$9 属性的值都被修改,但是只有最近的九个可以被保存起来。下面的例子举例说明了 $1...$9 属性的用法: function matchDemo(){
       var s;
       var re = new RegExp("d(b+)(d)","ig");
       var str = "cdbBdbsbdbdz";
       var arr = re.exec(str);
       s = "$1 contains: " + RegExp.$1 + "\n";
       s += "$2 contains: " + RegExp.$2 + "\n";
       s += "$3 contains: " + RegExp.$3;
       alert(s);
    }