首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

去掉注释和print里的内容,该怎么处理

2012-03-11 
去掉注释和print里的内容publicclassaaa{publicstaticvoidmain(String[]s){System.out.println( aaa.dele

去掉注释和print里的内容
public   class   aaa
{
      public   static   void   main(String[]   s)
      {
              System.out.println( "aaa     .delete()))( "+     aaaa);        
              System.out.println( "aaaaaaa ");       //.delete()      
              System.out.println( "aa*/aaaaa ");
              /*System.out.println( "aaa/*aaaa ");           //   hflksdhf   */
              System.out.println( "aaaaaaa ");
              /*System.out.println( "aaaaaaa ");
              System.out.println( "aaaa*/System.out.println( "aaa ");
              System.out.println( "aaaaa/*aa ");
              dd.delete()                                                                                            
              System.out.println( "aaaaaaa ");*/
System.out.println( "aaaaaaa ");//System.out.println( "aaaaaaa ");
              System.out.println( "aaaaaaa ");
              System.out.println( "aaa//aaaa ");     ///*.delete()              
              /*System.out.println( "aaaaaaa ");
              System.out.println( "aaaaa/*aa ");
              System.out.println( "aaaa*/   System.out.println( "a//*a*//a ");                        
      }
}

上面的代码是我能想到的,感觉注释比较复杂的例子了,

写了会儿去掉注释和print里的内容代码,头都大了,哪位可以提供个程序啊

[解决办法]
用正则表达式应该可以满足你的需求
[解决办法]
深奥
不知道你想怎样
[解决办法]
不懂楼主要的是什么
[解决办法]
mark挺有用的功能
[解决办法]
说说我的思路
1,处理单行注释,即//后的内容,这个可以读取出一行,处理一行
利用正则表达式找出符合单行注释,
String regMatchSingleLineComs= "(//.*) ";
2,处理多行注释,把所有代码的连成一个字符串(可以用BufferString.append效率高点),即/* */中的内容.
同样利用正则表达式找出
String regMatchMultiLineComs= "(/\\*.*?\\*/) ";
3,处理print方法里的内容,同样利用正则找出println后面括号里的内容
String regMatchPrintlnMethod= "println\\(\ "{0,1}(.*?)\ "{0,1}\\) ";

PS:以上正则只找出符合条件的,你可以同过replaceAll方法,替换成空格,或其他方法删除
[解决办法]
首先去掉单行注释和print里的内容代码strText = strText.replaceAll( "System.out.println\\(\ ".*\ "\\) ", "System.out.println\\(\ "\ "\\) ").replaceAll( "\\.* ", " ");



再去掉多行的注释:
Pattern p = Pattern.compile( "/\\*.*?\\*/ ", ,Pattern.DOTALL);
Matcher m = p.matcher(strText);
strText = m.replaceAll( " ");
完事~~~~~~~~~~~
[解决办法]
学习中啊
[解决办法]
可以写一个程序,然后处理你的源文件
[解决办法]
进来学习~~~

热点排行
Bad Request.