xian123 发表于 2015-12-28 14:57:27

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。

  
  
  
  
  
  
  
页: [1]
查看完整版本: Perl 学习手札之十三:building function