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 将数字转换为八进制

 

posted @ 2013-06-16 00:05  to be crazy  阅读(1362)  评论(0编辑  收藏  举报