• 网络学院
  • IT资讯
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
perl实例分析教程之十一
  站点:
  • 首 页
  • 最新软件
  • 文章教程
  • 国内软件
  • 国外软件
  • 绿色软件
  • 源码下载
  • 字体下载
perl实例分析教程之十一
软件发布 perl实例分析教程之十一
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件 绿软下载
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回文章教程首页 >> 文章首页 >> 编程技术 >> CGI教程 >> perl实例分析教程之十一

perl实例分析教程之十一

添加时间: 2006-5-9 4:23:50  作者: CGI教程  阅读次数:38   来源: http://d9soft.com

        四、增加元素

  创建一个关联数组元素最简单的方法是赋值,如语句$fruit{"bananas"} = 1; 把1赋给关联数组%fruit下标为bananas的元素,如果该元素不存在,则被创建,如果数组%fruit从未使用过,也被创建。
这一特性使得关联数组很容易用于计数。下面我们用关联数组改写上面的程序,注意实现同样的功能此程序简化了许多。

1 : #!/usr/local/bin/perl
2 :
3 : while ($inputline = ) {
4 : while ($inputline =~ /b[A-Z]S+/g) {
5 : $word = $&;
6 : $word =~ s/[;.,:-]$//; # remove punctuation
7 : $wordlist{$word} += 1;
8 : }
9 : }
10: print ("Capitalized words and number of occurrences:n");
11: foreach $capword (keys(%wordlist)) {
12: print ("$capword: $wordlist{$capword}n");
13: }

运行结果如下:

Here is a line of Input.
This Input contains some Capitalized words.
^D
Capitalized words and number of occurrences:
This: 1
Input: 2
Here: 1
Capitalized: 1

你可以看到,这次程序简单多了,读取输入并存贮各单词数目从20行减少到了7行。
本程序用关联数组%wordlist跟踪首字母大写的单词,下标就用单词本身,元素值为该单词出现的次数。第11行使用了内嵌函数keys()。这个函数返回关联数组的下标列表,foreach语句就用此列表循环。
注:关联数组总是随机存贮的,因此当你用keys()访问其所有元素时,不保证元素以任何顺序出现,特别值得一提的是,它们不会以被创建的顺序出现。
要想控制关联数组元素出现的次序,可以用sort()函数对keys()返回值进行排列,如:

foreach $capword (sort keys(%wordlist)) {
print ("$capword: $wordlist{$capword}n");
}  

五、创建关联数组

  可以用单个赋值语句创建关联数组,如:
%fruit = ("apples",17,"bananas",9,"oranges","none");
此语句创建的关联数组含有下面三个元素:

下标为apples的元素,值为17
下标为bananas的元素,值为9
下标为oranges的元素,值为none
注:用列表给关联数组赋值时,Perl5允许使用"=>"或","来分隔下标与值,用"=>"可读性更好些,上面语句等效于:
%fruit = ("apples"=>17,"bananas"=>9,"oranges"=>"none");

 

上下文章:

 

上一篇文章: perl实例分析教程之十二 下一篇文章: perl实例分析教程之十

相关文章:

  • PS教程:神奇 用Photoshop让美女走出画框
  • PS教程:看看如何用Photoshop把照片演变成水墨画
  • Photoshop教程:教你如何创出发丝的炫彩莹亮效果
  • 彻底DIY Vista主题制作教程(上)
  • 基于Sendmail和Perl的邮件附件过滤系统(二)

相关软件:

  • 木马分析专家个人防火墙 2008 0814
  • 策略大师证券分析系统 V3.0
  • 木马分析专家 2008 9.93 Build 0811
  • 新狐股票分析师(XhStock) V2.0
  • 超级图库(SuperLib) V3.1.27 单机版
  • 猫的传说Excel成绩分析 V1.90 特别版

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

编程技术分类导航

  • ASP & ASP.NET教程
  • PHP教程
  • JSP教程
  • C/C++教程
  • VB & VB.NET教程
  • VC教程
  • Delphi教程
  • BCB教程
  • VFP教程
  • PB教程
  • JAVA教程
  • XML教程
  • C#教程
  • CGI教程

本类经典文章推荐

  • CGI教程(1)
  • CGI教程(2)
  • CGI教程(3)
  • CGI教程(4)
  • CGI教程(5)
  • CGI教程(6)
  • CGI教程(7)
  • CGI教程(8)
  • CGI教程(9)
  • CGI教学:第一章 cgilib例

CGI教程阅读排行

  • CGI教程(1)
  • PERL 的 CGI 文件及目录操作
  • CGI教程(2)
  • CGI教程(3)
  • 文件加锁方法——通用锁函数
  • perl实例分析教程之一
  • CGI教程(4)
  • CGI教程(5)
  • CGI教学:第一章 cgilib例
  • CGI教程(7)

编程技术阅读总排行

  • VB入门教程之一
  • Java连接数据库实例
  • 第二章 PowerBuilder 入门之创建新...
  • VC++之List Box/Check List Box控...
  • 第一章 什么是PowerBuilder
  • VC++ List Ctrl控件
  • VC++ Combo Box/Combo Box Ex控件
  • 学C++不得不看的一篇文章
  • VB入门教程之二
  • VC++之Button控件

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有