分类: Python/Ruby
2012-03-24 13:14:00
有段时间对perl中的tr///和s///的作用有点混淆,通过做实验终于明白它们之间的细微差别,在此一记。
$var='abcda';
$var =~ s/a/11/g;
最终var值为11bcd11
而$var =~ tr/a/11/;后
$var值为1bcd1;
以上事例说明s替换可以将一个字符(比如a)换成两个字符(11),而tr转换却只能是一对一的替换(a只能转换为1,不能是11)。
以上为个人见解,如有疑问欢迎拍板砖。