您的位置:首页 > 其它

用perl脚本实现一个简单的行注释到块注释的转换

2014-12-11 19:40 323 查看
由于公司的代码规范规定,严禁使用行注释代码。但项目写了一半有很多行注释的地方,一个个改起来未免太麻烦了些,所以写了一个比较‘简易’的perl脚本来实现批量的修改。

由于没有系统的学习过perl,用起来就比较随意了一些。

代码仅仅只有20多行,也只是对常见的双引号和单引号的特殊情况做了判断。

#! /usr/bin/perl
use strict;
use Tie::File;

my $argc = @ARGV;
my $cnt = 0;

while ($cnt < $argc) {
tie my @file, 'Tie::File', $ARGV[$cnt++];
for (@file) {
  my $fileLine = $_;
  my $flag = 0;
  $fileLine =~ s/\".*\"//g;
  $fileLine =~ s/\'.*\'//g;
  if ($fileLine =~ /\/\/+(.*)/)
  {
  	my $note = $1;
  	if ($note =~ /^ /)
  	{
  	    $_ =~ s/\/\/+$note/\/\*$note \*\//;
  	}
  	else
  	{
  	    $_ =~ s/\/\/+$note/\/\* $note \*\//;
  	}
  }
}
}


Tie::File的作用是对记录型文件进行原地修改。

测试了下列的情况:

1. // a

2. /// a

3. //a

4. "//a" //a

5. '''a// a' // a

转换以后变成了

1. /* a */

2. /* a */

3. /* a */

4. "//a" /* a */

5. '''a// a' /* a */

代码虽然挺简单的,不过当做日常工具来使用还是不错的。就先这样。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: