用editplus抄写了书上的代码,并保存为.pl文件,但是在windows命令行执行的时候没有输出,出现各种状况,查找问题总结为三点:
1、第一行要有代码“#! perl“(Perl的路径已经加入环境变量);
2、代码抄写错误 ,”s/\w<([^>]+)>/\U$1/g“写成了”s/\w<([^>]+)>/\U$1g“;
3、.pl文件默认打开方式是editplus,在命令行调用程序的时候,程序没有输出,而是调用editplus打开了源文件。此时改其默认打开方式为 ”Perl command line interpreter“ 即可。
源码如下:
#! perl
@lines = `perldoc -u -f atan2`;
foreach (@lines) {
s/\w<([^>]+)>/\U$1/g;
print;
}
解析:[>] 代表字符 ">",[^>] 代表除" > "的所有字符,\w 代表一个数字、字母或下划线 匹配以一个\w 开头,被<>括起来的内容 ,后面的 $1 代表的是前面括号括起来的内容,\U 代表大写,g代表全部替换。