Learning Perl总结提升

本文是一份全面的Perl编程教程,涵盖了从基础语法到高级特性的实践应用,包括表量数据、子程序、输入输出、哈希、正则表达式、文件处理、模块使用等多个方面。通过实例代码,读者可以深入理解Perl的编程理念和方法,提升Perl编程能力。
摘要由CSDN通过智能技术生成

第一章简介

第二章表量数据

第三章列表与数组

第四章子程序

第五章输入与输出

文件句柄就是程序里代表进程(process)与外界之间从输入输出联系的名称。

1写一个功能跟cat相似的程序,但将各行内容反序后输出.

Print reverse<>

2写一个程序,要求用户分行键入各个字符串,然后以20个字符宽、向右对齐的方式输出每个字符串。为了确定输出结果在适当的字段中,请一并输出由数字组成的“标尺行”。

print “Enter somelines,then press Ctrl-D:\n”;

chomp(my @lines=<STDIN>);


print“1234567890”×7,“12345\n”;#标尺行,到第75个字符的地方


foreach(@lines){

printf“%20s\n”,$_;#交由%20s转换后输出

}

3修改上一个程序,让用户自行选择字符宽度,因此在键入30的时候,hellogood-bye(在不同行上)应该会向右对齐到第30个字符。根据用户键入的宽度,自动调整标尺行的宽度。

print“What columwitdth would you like?”;

chomp(my $width=<STDIN>);


print “Enter somelines,then press Ctrl-D:\n”;#长度按需变化的标尺行


foreach(@lines){

printf“%${width}s\n”,$_;

}

第六章哈希

1编程读入用户指定的名字并且汇报相应的姓。

my %last_name =qw{

fred flinstone

barney rubble

wilma flintstone

};

print “Pleaseenter a first name:”;

chomp(my $name=<STDIN>);

print “That's$name $last_name{$name}.\n”;


2编程读取一系列单词,每行一个,指导文件中止,然后打印一份列出每个单词出现次数的列表。

my(@words,%count,$word);#申明变量

chomp(@words=<STDIN>);


foreach $word(@words){

$count{$word}+=1;

}


foreach $word (keys%count){

print word was seen$count{$word}times.\n”;

}

3 编程输出%ENV哈希中所有的键值对,输出按照ASCII编码排序,分两列打印。设法让打印结果纵向对齐。注意length函数可以帮助确定第一列的宽度。测试完毕后加入更多新变量再次验证程序的输出正确无误。

My $longest =0;

foreach my $key(keys %ENV){

$longest=$key_length if $key_length>$longest;

}

foreach my $key(sort keys %ENV){#依次处理hash,对键值进行排序

printf“%-${longest}s %s\n”,$key,$key,$ENV{key};

}


第七章漫游正则表达

1从输入中读取数据,遇到包含fred字符串的行就打印出该行。

While(<>){

if (/fred/){

print;

}

}

6写程序,输出在输入数据中同时出现wilma以及fred的每一行

while(<>){

if(/wilma/){

if(/fred/){

print;

}

}

}


第八章用正则表达式进行匹配

1 利用模式测试程序,写个模式,使它能匹配match这个字符串。

befor<match>after

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值