Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7919774
  • 博文数量: 701
  • 博客积分: 2150
  • 博客等级: 上尉
  • 技术积分: 13233
  • 用 户 组: 普通用户
  • 注册时间: 2011-06-29 16:28
个人简介

天行健,君子以自强不息!

文章分类

全部博文(701)

文章存档

2019年(2)

2018年(12)

2017年(76)

2016年(120)

2015年(178)

2014年(129)

2013年(123)

2012年(61)

分类: Python/Ruby

2013-02-18 10:37:43

本文重点讨论Perl字符串处理函数的用法,每种函数都有各自的特点和作用,

下面请看本文详细介绍.


Perl字符串处理函数
1. index
语法:
position=index(string,substring,position);
语义:
返回子串substring在字符串string中的位置,如果不存在则返回-1。
参数position是可选项,表示匹配之前跳过的字符数,或者说从该位置开始匹配。

2. rindex
语法:
position=rindex(string,substring,position);
语义:
与index类似,区别是从右端匹配。

3. length
语法:
num=length(string);
语义:
返回字符串长度,或者说含有字符的数目。

4. pos
语法:
offset=pos(string);
语义:
返回最后一次模式匹配的位置。

5.substr
语法:
substr(expr,skipchars,length)
语义:
抽取字符串(或表达式生成的字符串)expr中的子串,
跳过skipchars个字符,或者说从位置skipchars开始抽取子串(第一个字符位置为0),
子串长度为length,此参数可忽略,意味着取剩下的全部字符。
当此函数出现在等式左边时,expr必须为变量或数组元素,此时其中部分子串被等式右边的值替换。

6.study
语法:
study(scalar);
语义:
用一种内部格式提高变量的访问速度,同一时刻只对一个变量起作用。

7. lc, uc
语法:
retval=lc(string);
retval=uc(string);
语义:
将字符串全部转换成小/大写字母。

8. lcfirst, ucfirst
语法:
retval=lcfirst(string);
retval=ucfirst(string);
语义:
将第一个字母转换成小/大写。

9. quotameta
语法:
newstring=quotemeta(oldstring);
语义:

将非单词的字母前面加上反斜线(\)。


语句:$string=quotemeta($string);
等效于:$string=~s/(\W)/\\$1/g;
常用于模式匹配操作中,确保字符串中没有字符被看作匹配操作符。


10. join
语法:
join(joinstr,list);
语义:
把字符串列表(数组)组合成一个长的字符串,在每两个列表元素间插入串joinstr。

11. sprintf
语法:
sprintf(string,fields);
语义:
与printf类似,区别是结果不输出到文件,而作为返回值赋给变量。


例子$num=26;
$outstr=sprintf("%d=%x hexadecimal or %o octal\n",$num,$num,$num);
print($outstr);
结果输出26=1a hexadecimal or 32 octal


原文链接:
http://developer.51cto.com/art/201007/211626.htm
阅读(12550) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~