繁体   English   中英

Perl正则表达式来查找和替换PHP多行注释

[英]Perl regex to find and replace php multiline comments

我试图找到一种方法,通过删除所有单行和多行注释来缩小PHP / JavaScript代码。 目前,我可以删除单行,但无法弄清楚如何删除多行注释。 我尝试了以下正则表达式:

\/\*[^\*\/]*\*\/
\/\*[^.\/]*\*\/

还有许多其他。 我用于查找单行而使多行失败的当前表达式是(\\/\\/[^\\n]*\\n|\\/\\*[^\\*\\/]*\\*\\/)

表达要求

  • 表达式必须在Perl中
  • 表达式不能在多行注释内//停止(即http://url.com
  • 该表达式必须能够找到单行注释和多行注释
  • 该表达式可用于查找任何多行PHP / JavaScript注释的开头和结尾。

您可以在此处测试所需的代码示例,可在此处找到

先感谢您。

\/\*[\s\S]*?\*\/
  • \\/\\*匹配/*
  • [\\s\\S]*? 匹配任何内容(非贪婪)
  • 直到\\*\\/ ; 匹配*/

http://www.perl.com/pub/2003/06/06/regexps.html

您不会单独使用点来工作。 排除换行符。

您将需要使用/ s选项。

有一个在线指南提供了以下perl正则表达式。

(?:\/\*(?:[^*]|(?:\*+[^*\/]))*\*+\/)|(?:\/\/.*)

并且似乎可以通过您的测试代码提供正确的输出。 但是您可能会遇到第10行这样的文本的麻烦,该行的其他元素中有注释。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM