Chinaunix首页 | 论坛 | 博客
  • 博客访问: 583828
  • 博文数量: 69
  • 博客积分: 2204
  • 博客等级: 大尉
  • 技术积分: 808
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-11 22:37
个人简介

..微笑着看着杯中的花茶一片片撑开.. ..透明的花瓣里水破开的声音很轻微..

文章分类

全部博文(69)

文章存档

2018年(1)

2017年(2)

2016年(10)

2015年(8)

2014年(6)

2013年(6)

2012年(4)

2011年(8)

2010年(12)

2009年(12)

分类:

2009-10-14 19:31:59

Perl程序中有些处理方式会经常用到,现收集在这里,以备后用。
 
1.数组去重复
 
说明:去除数组中重复的元素。
 
方法1:grep函数与hash的结合,$count{$_}的值大于1后,$_就不会在被放入@uniq_times了。

my @array = ( 'a', 'b', 'c', 'a', 'd', 1, 2, 5, 1, 5 );
my %count;
my @uniq_times = grep { ++$count{$_} < 2; } @array;
print @uniq_times;

 
C:\>x.pl
abcd125
 
方法2:hash键唯一的特性,将hash的键赋给一个数组。

my @array = ( 'a', 'b', 'c', 'a', 'd', 1, 2, 5, 1, 5 );
my %saw;
$saw{$_}++ foreach(@array);
my @uniq_array = keys %saw;
print @uniq_array;

 
C:\>x.pl
1cabd25

2.命令行参数
 
说明:从shell的命令行中读取参数。如:C:\>x.pl 80 1.txt
 
方法:直接从@ARGV数组中取。@ARGV数组包含的就是传递给脚本的命令行参数。

print "$_\n" for (@ARGV);

 
C:\Documents and Settings\天使.斑斑\桌面>x.pl 1 2 3 4
1
2
3
4

(2009-20-14)
 
by banban
阅读(1412) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~