【发布时间】:2014-12-16 07:28:12
【问题描述】:
我需要找到一个正则表达式来替换我的 js 文件中的注释。我想要的是像这样转换所有行:
//it's a commentaire
进入这个
/* it's a commentaire */
因为我尝试优化我的文件,我认为有些问题来自于此。我使用php函数file_get_content,它在一行中创建一个字符串,所以所有的字符串都成为语法的注释原因。
【问题讨论】:
我需要找到一个正则表达式来替换我的 js 文件中的注释。我想要的是像这样转换所有行:
//it's a commentaire
进入这个
/* it's a commentaire */
因为我尝试优化我的文件,我认为有些问题来自于此。我使用php函数file_get_content,它在一行中创建一个字符串,所以所有的字符串都成为语法的注释原因。
【问题讨论】:
【讨论】:
如果你想安全起见,你想考虑这些东西:
<script type="text/javascript">
var var1 = prompt('Which character does line-escapes?', '//');
</script>
这不是注释,因为它在字符串中。我在 here 上发了一篇关于这个的帖子。因此,您要做的是使用该答案中的正则表达式并检查内容以查看您是否正在处理行注释。最简单的方法是将您想要的放在捕获组中:
(\/\/([^\n]*)(?:\n|$))|(['"])(?:(?!\3|\\).|\\.)*\3|\/(?![*/])(?:[^\\/]|\\.)+\/[igm]*|\/\*(?:[^*]|\*(?!\/))*\*\/
现在,如果捕获组 1 不为空,请将其替换为 /*$2*/。否则,不要做任何事情(或者用整个匹配替换它,实际上不会改变任何东西。
【讨论】: