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