匹配所有js代码而不是注释的正则表达式

时间:2014-12-22 06:47:01

标签: php regex

以下正则表达式应该匹配所有js:

  • 条件js(好的:已经工作)
  • 添加js脚本(确定:已经正常工作)
  • 在第j行(好的:已经在工作)
  • 但没有评论Js(需要实施)

我想排除所有被评论的js(但保留条件评论中的那个

这是当前的正则表达式:

^<!--(\[if lt IE.*?\])>[\s\S]*?<script(\b[^>]*?>)([\s\S]*?)<\/script>[\s\S]*?<!\[endif\]-->$|^<script(\b[^>]*?>)([\s\S]*?)<\/script>$

所以跳过这种文字的匹配:

<!--
<script type="text/javascript">
SOME JS
</script> 
-->

OR

<!--
<script src='...' type="text/javascript"></script> 
-->

条件评论通常采用以下形式:

<!--[if lt IE]>
<script type="text/javascript">
Some JS
</script>
<![endif]-->

是否可以在一个正则表达式中完成上述所有操作? 由于这是我的第一个正则表达式,如果您有任何其他建议,欢迎。

由于

0 个答案:

没有答案