设为首页 收藏本站
查看: 940|回复: 0

[经验分享] perl 语法

[复制链接]

尚未签到

发表于 2015-12-28 09:16:48 | 显示全部楼层 |阅读模式
  use strict;
use warnings;
  print "===================变量====================\n";
my $a=1;
$a=2;
my $b=2;
$b++;
  print $a+$b."\n";
print ($a+$b,"\n");
  
print "===================数组====================\n";
my @Array=();
$Array[0]='a';
$Array[1]='b';
$Array[2]='c';
$Array[3]='d';
  shift(@Array);
push(@Array,'e');
print (@Array,"\n");
  my $d="@Array";
print "数组内容:$d\n";
print "数组内容:@Array\n";
my $Len1=@Array;
my $Len2=scalar(@Array);
my @Array2=@Array;
my $reArray=@Array;
my $reArray1=\@Array;
my $reArray2=['a',$reArray1,'c','d'];
print "数组长度:$reArray\n";
print "数组索引:$Array2[1]\n";
print "引用数组1:$reArray1 $reArray1->[1]\n";
print "引用数组2:$reArray2->[0] $reArray2->[1][1] $reArray2->[2]\n";
  print "===================遍历====================\n";
foreach my $s(@Array){
print "值:$s\n";
}
  my $i=0;
foreach my $s(@Array){
my $ss=$Array[$i];
print "$i值:$ss\n";
$i++;
}
  foreach my $i(0..$Len2-1){
print $Len2-1;
print "$i 值\n";
}
  foreach my $i(0..$#{Array}){
print "$i 值 \$#: \n";
}
  print "===================Hash====================\n";
my %Hash=(
a=>'123',
b=>'456'
);
$Hash{c}='789';
if(!exists $Hash{c}){
print "1\n"
}
print $Hash{c},"\n";
  $Hash{d}=\@Array;
$Hash{e}=$reArray2;
my $HashLen=%Hash;
my $reHash=\%Hash;
print "$HashLen\n";
print "$reHash : $reHash->{'b'}\n";
  print "$reHash->{'d'}->[0]\n";
print "$reHash->{'e'}->[1][2]\n";
  my $keyNum=keys %Hash;
print "键数:$keyNum\n";
print "\n";
for my $i(%Hash){
print "循环Hash: $i\n";
}
print "\n";
for my $key(keys %Hash){
my $varType="标量";
if(ref $Hash{$key} eq 'ARRAY'){
$varType=ref $Hash{$key};
}
if(ref $Hash{$key} eq 'HASH'){
$varType=ref $Hash{$key};
}
print "循环Hashkeys: $key => $Hash{$key} [$varType]\n";
}
  while(my ($key,$val)=each %Hash){
print "key:$key => val:$val\n";
}
  print "================function======================\n";
&abc1(1,2,3);
&abc2(1,2,3);
&abc3(1,2,3);
&abc4(1,2,3);
&abc5(1=>2,3=>4);
&abc6('abc',1=>2,3=>4);
  my %asd=(1=>2,3=>4);
my $asd4={%asd};
&abc7('abc',$asd4);
  sub abc1{
my @Array=@_;
print "@Array\n";
}
sub abc2{
my ($str1,$str2)=@_;
print "$str1,$str2 @_\n";
}
sub abc3{
my $str=shift; #shift这个函数把数组的第一个值移出并且返回它,然后把数组长度减一并且把所有的东西都顺移。如果在数组中不再存在元素,它返回 undef。
print "$str @_\n";
}
sub abc4{
my $str=$_[1];
print "$str @_\n";
}
sub abc5{
my %h=@_;
print $h{"1"}," @_\n";
}
sub abc6{
my $str=shift;
my %h=@_;
print "$str @_\n";
}
sub abc7{
my $str=shift;
my $h=shift;
print "$str $h->{1}\n";
}
  print "===================if======================\n";
if($a==123){
} elsif ($a==456){
} else {
}
print 'tlq' x 50 ."\n";
print "\$a=$a\n";
  if($a==2){
$a=3;
}
print "$a\n";
  print "===================test========================";
#use Data::Dumper;
#my $MyTestOut=Dumper($Self);
#open (MYTEST,"> D:/www/edgeWeb/Debug/MyTimTest.txt");print MYTEST $MyTestOut;close(MYTEST);

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-157261-1-1.html 上篇帖子: Perl根据日期分割数据文件 下篇帖子: perl学习之裸字
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表