重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

Perl基本语法实例,变量,数组,函数,if,for,while-创新互联

  1. #!/usr/bin/perl -w

    公司主营业务:成都做网站、网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出黄州免费做网站回馈大家。
  2. #########################################################################

  3. # File Name: test.pl

  4. #########################################################################

  5. print "hello word \n";

  6. print "---- 变量定义用\$ 符号------\n";

  7. $a=`echo xxxx`;

  8. print "$a";

  9. $b='aaaa'.'hhhh';

  10. $c="bbbb";

  11. $d="$b"."$c";

  12. $d.='eeee';

  13. print "$d\n";

  14. print "d: $d\n";

  15. $bl1 = 1>=0;

  16. $bl2 = 1>=3;

  17. print $bl1;

  18. print $bl2;

  19. print "---- if elsif else 条件判断语句 ----\n";

  20. $if1=2;

  21. if($if1 == 1){

  22.     print "pass\n";

  23. }elsif($if1 == 2){

  24.     print "==2\n";

  25. }else{

  26.     print "fail\n";

  27. }

  28. #chomp($in1 = );

  29. #print "your input: $in1\n";

  30. #if(defined($in2)){

  31. #   print "1";

  32. #}else{

  33. #   print "2";

  34. #}

  35. print " ------- \@ 符号来定义数组 ------ \n";

  36. @array = (1,2,3,"4")x4;

  37. print "$array[1]\n";

  38. print "$#array\n";

  39. print "$array[-1] \n";

  40. $xtest="123"x5;

  41. print "$xtest\n";

  42. print "pop push 针对数组的末尾操作 \n";

  43. print "pop 取出最后一个,返回数组剩下的, push将一个元素添加到末尾 \n";

  44. print "shift unshift 为 pop push的反向操作,针对数组头\n";

  45. @array2 = 5..10;

  46. print "$#array2  ----  $array2[-1] \n";

  47. pop @array2;

  48. print "$#array2  ----  $array2[-1] \n";

  49. pop(@array2);

  50. print "$#array2  ----  $array2[-1] \n";

  51. print "---------- array3 ----------\n";

  52. @array3 = 1..3;

  53. print "$#array3  ----  $array3[-1] \n";

  54. push @array3,9;

  55. print "$#array3  ----  $array3[-1] \n";

  56. push @array3,10...12;

  57. print "$#array3  ----  $array3[-1] \n";

  58. print "---------- array4 ----------\n";

  59. @array4 = 1..3;

  60. print "@array4  ----  $array4[0] \n";

  61. shift @array4;

  62. print "@array4  ----  $array4[0] \n";

  63. unshift @array4,99;

  64. print "@array4  ----  $array4[0] \n";

  65. unshift(@array4,'98');

  66. print "@array4  ----  $array4[0] \n";

  67. print "---------- array5 ----------\n";

  68. @array5 = qw(eating rocks is wrong);

  69. $array5 = "right";

  70. print "@array5 ... $array5  \n";

  71. print "this is $array5[3] \n";

  72. print "this is ${array5}[3]\n";

  73. print "this is $array5"."[3]\n";

  74. print "this is $array5\[3] \n";

  75. print "--------- for --------------\n";

  76. for($i=0; $i<10; $i++){

  77.     print "for: $i\n";

  78. }

  79. #实际for和foreach是一样的

  80. #中断循环对比C 的break和continue,Perl分别对应的是 last 和 next

  81. #Perl中还特有 redo, 调到当前循环的顶端,不进行条件判断就再次执行本次循环

  82. #next会进入下一次循环,redo会继续执行本次循环

  83. print "--------- foreach ----------\n";

  84. @rocks = qw(bedrock slate lava);

  85. print "before rocks: \n @rocks \n";

  86. foreach $rock (@rocks){

  87.         #如果有 redo 应该跳到的位置

  88.     $rock = "\t$rock";

  89.     $rock .= "\n";

  90.     print "new rock: $rock \n";

  91. }

  92. print "after rocks: \n @rocks \n";

  93. print "--------- reverse 翻转 ----------\n";

  94. @reverse1 = reverse 6..9;

  95. print "@reverse1 \n";

  96. @reverse2 = reverse @reverse1;

  97. print "@reverse2\n";

  98. print "--------- sort 排序 -------------\n";

  99. @sort1 = qw(aaa ccc eee bbb ddd);

  100. print "@sort1\n";

  101. @sort1 = sort(@sort1);

  102. print "@sort1\n";

  103. print "--------- context -----------\n";

  104. print "变量和列表会根据上下文给出不同的值\n";

  105. print 1+@sort1."\n";

  106. @rocks = qw(xxx aaa ccc);

  107. print "I have",@rocks,"rocks!\n";

  108. #强制转换为标量

  109. print "I have", scalar @rocks, "rocks!\n";

  110. print "--------- sub ----------------\n";

  111. sub subtest1{

  112.     $temp=$a.$b;

  113.     $temp;

  114. }

  115. $a = "1";

  116. $b = "2zzzzz";

  117. $c = &subtest1;

  118. print "c: $c\n";

  119. sub addfunc{

  120.     $size = @_;

  121.     print "param size: $size\n";

  122.     my($num1, $num2);

  123.     ($num1, $num2) = @_;

  124.     $num1 + $num2;

  125. }

  126. $addresult = &addfunc(100,99);

  127. print "addresult: $addresult\n";

  128. print "-------- 子程序 == 函数 ----\n";

  129. print "函数参数放在 \@_数组内,可以用shift循环的切出第一个参数\n";

  130. print "my() 定义局部变量\n";

  131. print "子程序的返回值就是最后一部的计算值\n";

  132. sub max{

  133.     my($maxValue) = shift @_;

  134.     foreach(@_){

  135.         if($_>$maxValue){

  136.             $maxValue = $_;

  137.         }

  138.     }

  139.     $maxValue;

  140. }

  141. @numset = (100,600,3000,3001);

  142. $maxValue = &max(@numset);

  143. print "maxValue: $maxValue\n";

  144. sub which_element_is{

  145.     if(@_ < 2){

  146.         return "输入参数个数不能小于2";

  147.     }

  148.     my($what, @array) = @_;

  149.     my $index = 0;

  150.     foreach(@array){

  151.         if($what eq $_){

  152.         #判断字符串相等不能使用==,只能用eq

  153.             print "Find this element [$_]: $index\n";

  154.             return $index;

  155.         }

  156.         $index++;

  157.     }

  158.     return "can't find this element";

  159. }

  160. @names = qw(kevin xiang jie);

  161. $which_element = &which_element_is("jie", @names);

  162. print "which_element: $which_element\n";

  163. print "上面的程序都是不严谨语法, 开头添加 use strict 变为严谨语法检测\n";

  164. print '定义变量时需要用my定义, my $baa = 1;  '."\n";


另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前题目:Perl基本语法实例,变量,数组,函数,if,for,while-创新互联
本文地址:http://cqcxhl.com/article/diiicd.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP