用perl脚本实现一个简单的行注释到块注释的转换
2014-12-11 19:40
323 查看
由于公司的代码规范规定,严禁使用行注释代码。但项目写了一半有很多行注释的地方,一个个改起来未免太麻烦了些,所以写了一个比较‘简易’的perl脚本来实现批量的修改。
由于没有系统的学习过perl,用起来就比较随意了一些。
代码仅仅只有20多行,也只是对常见的双引号和单引号的特殊情况做了判断。
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 */
代码虽然挺简单的,不过当做日常工具来使用还是不错的。就先这样。
由于没有系统的学习过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 */
代码虽然挺简单的,不过当做日常工具来使用还是不错的。就先这样。
相关文章推荐
- 个人实现的一个简单的ipv4地址转换为二进制显示的脚本
- 一个简单的Perl多线程脚本
- 用PERL实现一个简单的NIDS
- 用一个简单的perl包轻松管理脚本中的软件调用
- 写一个python脚本,实现简单的http服务器功能:
- bones脚本篇 - 实现一个简单的列表
- 简单实用的HTML到UBB转换脚本工具实现说明
- Linux脚本设计练习2——一个游戏菜单的简单实现
- [脚本] 一个用于BMP到EPS转换的BAT脚本实现(需要安装bmeps)
- shell实现一个简单的计算器功能小脚本
- Perl脚本菜单的简单实现
- perl 脚本实现简单搜索修改文件并生成diff文件
- 一个简单的转换输出的shell脚本代码
- ntohs的一个简单实现(将网络流中用两个字节16进制表示的资源数(如DNS)和长度转换为整形)
- linux之 从0构建一个简单的小linux详解(脚本实现)
- 一个简单的js脚本实现表格排序
- 将十进制整形数转换成二进制,然后通过字符型输出 自己实现的一个简单的例子
- 一个简单的shell脚本-----实现虚拟机实验环境的简单配置
- 一个简单的wifi开关shell脚本实现
- 一个简单的利用ini配置文件以及用户输入的交互进行文件夹内容拷贝的批处理文件脚本的实现