perl中tr的研究

perl中有三种模式  m// ,s///,tr///;
前两种就不多说了,经常出现。这里说下tr:
很多人用习惯了s///,发现和tr有很多相同的地方,都是将字符串替换成自己想要的内容。
tr的重要作用在于“转换”.
 
例如:
大小写转化:
$str = "Hello World";
$str =~ tr/a-zA-Z/A-Za-z/;  #这里是将大写转为小写,小写转化为大写
print $str;  #输出hELLO wORLD

计算字符串的个数:
        $str = "Hello World";
my $count=$str =~ tr/a-z/a-z/;  #这里只计算小写字母的出现个数,大写写出A-Z
print $count;     # 输出8

关于tr的修饰符有三个: /c,/d./s
perldoc这样解释:
c Complement the SEARCHLIST. 
d Delete found but unreplaced characters. 
s Squash duplicate replaced characters. 

$str = "Hello World";
$str =~ tr/ll/*/c;  #将不是l或者ll全部转化成*
print $str;  #输出**ll*****l*
 
$str = "Hello World";
$str =~ tr/ll/*/d; #与c修饰符相反
print $str;  #输出He**o Wor*d
$str = "Hello World";
$str =~ tr/ll/*/s;  #将连续的ll变为一个*号
print $str;#输出He*o Wor*d









本文转自 mcshell 51CTO博客,原文链接:http://blog.51cto.com/mcshell/1047365,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值