删除 Javascript 注释 RegEx

Remove Javascript comments RegEx

本文关键字:RegEx 注释 Javascript 删除      更新时间:2023-09-26

嗨,我正在尝试删除HTML文档中的所有javascript注释(//)。 例如。

<html>
<img src="http://example.com/img.jpg" />
<script>
//Some comments
gallery: {
      enabled: true,
      navigateByImgClick: true,
      preload: [0,1] // Will preload 0 - before current, and 1 after the current image
    },
</script>
</html>

以下是我的正则表达式代码[^(http?s:)|ftp]'/'/(.*)。这是有效的。但我想确定,有没有办法改进这段代码。?

您的正则表达式说"匹配任何不在fhpts?:()中的字符,后跟两个文字斜杠和任何行的内容"

通常,你想做(?<!http)(?<!https)(?<!ftp)'/'/.*,但是JavaScript不支持回溯(让每个人都很失望),所以考虑这样做:

.replace(/'s'/'/.*/,"")

这将要求评论在他们之前有一个空格(他们几乎总是这样做) - 它并不完美,但这是我目前能想到的最好的 XD