日期:2014-05-17  浏览次数:20887 次

正则表达式 去除部分html问题
html源代码如下:
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=GB2312" />
    <title></title>
    <!--deletebegin-->
    <script src="../../../js/jquery-1.9.1.min.js" type="text/javascript"></script>
    <!-- deleteend-->
    <script src="../../../js/base.js" type="text/javascript"></script>
    <script type="text/javascript">
        function test() {
            $('#divAn').animate({ right: "50%" });
        }
        function test1() {
            $('#divAn').animate({ right: "50%" });
        }
        //deletebegin
        function test2() {
            $('#divAn').animate({ right: "50%" });
        }
        function test3() {
            $('#divAn').animate({ right: "50%" });
        }
        //deleteend
    </script>
</head>
<body>
    <div id="divAn" style="width: 100px; height: 100px; background-color: Red; right: 20px;
        position: absolute;">
    </div>
    <div>
        1111111</div>
    <div>
        222222</div>
    <div>
        3333333</div>
    <!--deletebegin-->
    <div>
        4444
        <div>
            55555</div>
    </div>
    <!--deleteend-->
    <input id="Button1" type="button" value="button" onclick="test();" />
</body>
</html>


要去除 "<!--deletebegin-->"和 "<!--deleteend-->"包含的任何html内容,以及"//deletebegin"和" //deleteend"包含的任何js函数.

用c#或者js的正则都行,谢谢各位帮助
html 正则表达式

------解决方案--------------------

try:
Regex.Replace(html, @"(?<=<!--deletebegin-->).*(?=<!--deleteend-->)", "");
Regex.Replace(html, @"(?<=//deletebegin).*(?=//deleteend)", "");

------解决方案--------------------
(?is)(?<=(<!--deletebegin-->
------解