2011-01-13 66 views
1

有没有一种快速的方法来删除Coldfusion文件中的所有评论?我必须处理大部分是注释的文件(特别是旧的非功能代码的注释),并且我想创建一个没有注释和功能代码的临时版本。有没有简单的方法从文件中删除ColdFusion注释?

我一般使用Notepad ++编辑CFM文件,但我也有ColdFusion Studio。

任何帮助表示赞赏!

+0

看到这也http://stackoverflow.com/questions/6804951/regex-to-remove-comments-in-xml-file-in-eclipse-java – 2012-02-21 21:57:36

+0

做那些编辑有找并替换支持正则表达式?我会这么想很容易做到这一点。 – 2011-01-13 19:19:00

回答

3

使用CFML,你可以用快速的正则表达式来完成。这只适用于基于CFML标签的评论,而不是脚本。

<cfset contents = fileRead(expandPath("./test2.cfm"))> 
<cfset noComments = rereplace(contents, "<!---.*?--->", "", "all")> 
<cfoutput> 
#htmlCodeFormat(noComments)# 
</cfoutput> 
+5

如果您有嵌套注释,这会中断。 – 2011-01-13 19:25:23

0

一种方法是创建一个cfm脚本来将整个.cfm文件解析为文本文件。 (使用cffile或java文件方法)。

然后在一个简单的正则表达式下滑至

之间删除任何东西有几个很好的正则表达式的例子,将删除从HTML和特定代码应为这个工作的伟大。

下面是一个正则表达式,我用它来移除某些代码中的第一个,这些代码围绕着我正在渲染的一些XML进行包装。它应该非常接近您需要删除所有评论。

< \ /?的div [^>] *?>

祝您好运!

1
You need a multirow regex find/replace. Eclipse let's you do it with:(?s)<!---(.*?)---> 

Alternately, you can.. 
Open http://gskinner.com/RegExr/ 
Enter <!---(.*\r)*---> into first box. 
Press Replace Tab. 
Copy/Paste your file's code into first text area. 
Second text area will contain filtered code. 

Works for CFML comments, you can modify regex to work for script comments.n 
相关问题