问题描述
- 初次接触perl脚本,请问下面的代码怎么理解
- #!/usr/local/bin/perl
$pattern=$ARGV[0];
$count=$pattern=~s/(?<[^>]*>)//g;
@ARGV=qw# #;
$print='print ""';
解决方案
#!/usr/local/bin/perl 这句如同*nix操作系统中用来指定脚本解释程序的位置。/usr/local/bin/perl是Perl语言的脚本解释器程序。
$pattern=$ARGV[0]; $pattern 是一个标量变量( scalar variable) @ARGV 是一个预定义数组变量,包含运行脚本时从命令行传送来的参数。 $ARGV[0] 是访问第一个数组元素,也就是第一个命令行参数。
$count=$pattern=~s/(?<[^>]*>)//g; s/(?<[^>]*>)//g 是模式替换表达式, 意思是替换形如 ?< some thing > 的字符串。 $pattern =~ $pattern=~s/(?<[^>]*>)//g 会返回$pattern中山相应模式的数目。还会把$pattern中匹配的内容变成空(也就是删除)。
@ARGV=qw# #; qw# # 代表一个空列表。 @ARGV = qw# # 把 @ARG赋值成空列表。
$print='print ""'; 给 $print赋值 print ""这个字符串。
这个脚本看似简单,其实包含了Perl语言中大量的概念。你得从基础学起吧。如果没有特别需要Perl的地方,建议不要学习Perl你会觉得相当凌乱。
但如果真学进去了,功能相当强大。
时间: 2024-08-10 02:23:21