RegEx在脚本标记之间拉取所有内容

时间:2013-12-25 21:41:09

标签: c# regex

我是否可以使用某种RegEx模式将HTML文件中的两个脚本标记(包括脚本标记本身)之间的所有内容拉出来?例如:

<html>
    <head>
        <title></title>
    </head>
    <body>
        <!-- A bunch of HTML here -->
        <script>
            // A bunch of javascript here
        </script>
        <script type="type/javascript">
            // Another block of javascript here
        </script>
    </body>
</html>

我希望能够捕获<script>标签之间的所有内容。我希望每个javascript块都是一个新的匹配。这可能与RegEx有关吗?我用C#作为我的语言。如果RegEx不能这样做,我想要某种解析器库的想法可以做到这一点。

1 个答案:

答案 0 :(得分:1)

  

我几乎可以保证我不会有包含结束脚本标记的javascript字符串文字

如果是这种情况......您可以尝试使用以下正则表达式:

<script[^>]*>(.*?)</script>

标记中的组为not greedy,因此正则表达式将匹配它找到的第一个。

但我强烈建议使用HTML解析器。

相关问题