zoukankan      html  css  js  c++  java
  • Perl 学习手札之十三:building function

    string.pl

    #!/usr/bin/perl
    #

    use strict;
    use warnings;

    main(@ARGV);

    sub main
    {
        my $string = "this is a string\n";
        print $string;
        
        chomp $string;
        message("[$string]");
        
        chop $string;
        message("[$string]");
        
        my $s2 = uc $string;
        message($s2);
        
        $s2 = lc $string;
        message($s2);
        
        $s2 = substr($string,5,2);
        message($s2);
        
        $s2 = substr($string,5,4);
        message($s2);
        
        $s2 = index ($string,'s');
        message($s2);

        $s2 = rindex($string,'s');
        message($s2);

        $s2 = substr($string,rindex($string,'s'));
        message($s2);
    }

    sub message
    {
        my $m = shift or return;
        print("$m\n");
    }

    sub error
    {
        my $e = shift || 'unkown error';
        print("$0: $e\n");
        exit 0;
    }

    可以参考perldoc perlfunc 来查看所有的building function 的情况。

    以上罗列了几个比较常用的。


    number.pl

    #!/usr/bin/perl
    #

    use strict;
    use warnings;

    main(@ARGV);

    sub main
    {
        my $number = 123.456;
        my $n2 = int($number);
        message($n2);
        
        $number = "a5";
        $n2 = hex($number);
        message($n2);
        
        $number = "75";
        $n2 = oct($number);
        message($n2);    
        
        $number = rand();
        message($number);

        $number = rand(100);
        message($number);    

        $number = int(rand(100));
        message($number); 
        
        srand($$. time);
        $number = int(rand(100));
        message($number);     
    }

    sub message
    {
        my $m = shift or return;
        print("$m\n");
    }

    sub error
    {
        my $e = shift || 'unkown error';
        print("$0: $e\n");
        exit 0;
    }

     关于数字的building in 函数不是太多

    arrays.pl

    #!/usr/bin/perl
    #

    use strict;
    use warnings;

    main(@ARGV);

    sub main
    {
        my @list = qw(jan feb mar apr may june july aug sep oct nov dec);
        push(@list,'foo');    #将元素‘foo'加入数组的最后一行
        message(join(':',@list));
        message(join(':',reverse @list));#将数组求逆序
        
        my $string = pop @list;#输出数组的最后一个元素
        message($string);
        
        $string = shift @list;#输出数组的第一个元素给string
        message($string);

        unshift (@list,$string);#将string加入数组,变成数组的第一个元素
        message($string);    

    }

    sub message
    {
        my $m = shift or return;
        print("$m\n");
    }

    sub error
    {
        my $e = shift || 'unkown error';
        print("$0: $e\n");
        exit 0;
    }

     可以看相应的注释。

    time.pl

    #!/usr/bin/perl
    #

    use strict;
    use warnings;

    main(@ARGV);

    sub main
    {
        my $t = time;
        my @months = qw(jan feb mar apr may june july aug sep oct nov dec);
        my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime();
        $year+=1900;
        message("year: $year, month:$months[$mon],day: $mday");
        message("$year-$months[$mon]-$mday $hour:$min:$sec");
    }

    sub message
    {
        my $m = shift or return;
        print("$m\n");
    }

    sub error
    {
        my $e = shift || 'unkown error';
        print("$0: $e\n");
        exit 0;
    }

    就一个关于localtime的building in function。

  • 相关阅读:
    转:wcf大文件传输解决之道(1)
    转:WCF传送二进制流数据基本实现步骤详解
    创建一个简单的WCF程序2——手动开启/关闭WCF服务与动态调用WCF地址
    创建一个简单的WCF程序
    转:【专题十二】实现一个简单的FTP服务器
    转:【专题十一】实现一个基于FTP协议的程序——文件上传下载器
    转:【专题十】实现简单的邮件收发器
    转:【专题九】实现类似QQ的即时通信程序
    转:【专题八】P2P编程
    转:【专题七】UDP编程补充——UDP广播程序的实现
  • 原文地址:https://www.cnblogs.com/hanleilei/p/2391137.html
Copyright © 2011-2022 走看看