shenyg 发表于 2015-12-27 10:12:28

perl的一些函数(一)

  1. index 函数
  index 主要用于字符串查找,返回从左->右查到子字符串的起始位置(起始位置0) ,可以带括号,也可以不带。当找不到会返回-1
  使用方法:   
  index STR,SUBSTR,POSITION
index STR,SUBSTR
  实例:




  #!/usr/bin/perl
use strict;
my $str1="Love me, love my dog\n";
print "return the first child string location\n";
print index $str1,"ove";
print "\nreturn the first child string from start postition\n";
print index($str1,"ove",2);
print "\nif can't find return -1\n";
print index($str1,"LOVE");
print "\n";


  结果:
  
  D:\>perl index.pl   
return the first child string location                            查找ove, ove 总共有出现第一次出现1,第二次10
1                                                               
return the first child string from start postition
10                                                                         <-----------从第3个位置查找(L-0,o-1,v-2)
if can't find return -1
-1
  2.rindex从后向前查找,使用方法和index一样
  
  rindex STR,SUBSTR,POSITION
rindex STR,SUBSTR





#!/usr/bin/perl
use strict;
my $str1="Love me, love my dog\n";
print "return the first child string location\n";
print rindex $str1,"ove";
print "\nreturn the first child string from start postition\n";
print rindex($str1,"ove",4);
print "\nif can't find return -1\n";
print rindex($str1,"LOVE");
print "\n";
View Code   运行结果:
  D:\>perl rindex.pl
return the first child string location
10
return the first child string from start postition
1
if can't find return -1
-1
  2.printf 函数
  printf FILEHANDLE FORMAT, LIST
printf FILEHANDLE
printf FORMAT, LIST
  printf 是从C语言移植过来的,参数和使用方法与C语言一样;
  %表示域说明的开始,域标识符有以下



#!/usr/bin/perl
use strict;
my $float_number="10.789";
printf("%.2f\n",$float_number);
printf("%c\n",65);
printf("%10s\n","this is a test,ten characters");
printf("%-30s\n","Love perl");
printf("%30s\n","Love perl");
printf("%d\n",102.88);
printf("%o\n",10);

  

printf部分域说明符


与类型
含义


d
输出整形


s
输出字符串


f
输出浮点数


c
  字符




  %.2f 保留2位小数,四舍五入
  %10 s靠右对齐,10个字符字
  结果:
  D:\>perl printf.pl
10.79
A
this is a test,ten characters
Love perl
                     Love perl
102
12          #          %o 将数字转换为八进制
  
页: [1]
查看完整版本: perl的一些函数(一)