出个小题目,无聊的人可以来玩一下

sub count_alpha {
    shift =~ tr/[a-zA-Z]//;
}

my $s = "d123abcAAAFGA";
print count_alpha($s), "\n";
嘿嘿,原来apile大师出马了啊。
也不知道我猜的对不对,tr/[A-z]/[A-z]/做了替换(虽然实际上也没换,不知道内核优化了这个没有),而tr/[A-z]//只是统计没有做替换。


QUOTE:
原帖由 福瑞哈哥 于 2007-9-17 13:52 发表
嘿嘿,原来apile大师出马了啊。
也不知道我猜的对不对,tr/[A-z]/[A-z]/做了替换(虽然实际上也没换,不知道内核优化了这个没有),而tr/[A-z]//只是统计没有做替换。

方括号是多余的,不应该要。
的确不需要..我写错了...
tr///;会改掉内容...我因为不想清掉内容..所以才写两遍..
如果要求精简..福瑞哈哥的比较精简...
apile有个大勋章表示什么意思啊?


QUOTE:
原帖由 perljoker 于 2007-9-17 18:07 发表
apile有个大勋章表示什么意思啊?

表示他是荣誉会员,也就是对本坛做出特殊贡献或者长期热心支持本论坛的 ID。


QUOTE:
原帖由 flw 于 2007-9-17 18:08 发表

表示他是荣誉会员,也就是对本坛做出特殊贡献或者长期热心支持本论坛的 ID。

我也想要
(虽然貌似做白日梦)


QUOTE:
原帖由 perljoker 于 2007-9-17 12:33 发表

这样能实现吗?发个测试结果看看

说的对,马虎了
sub count_alpha{
my @count=shift=~/([a-z])/ig;
scalar @count;
}
依然没有测试……呵呵