编辑:TR ///不支持变量插值,所以我s/\Q$_\E//g;
代替Perl的TR ///没有做什么,我想
或者,更有可能去了,我没有做正确的事情.. 。
我有以下代码:
#!/usr/bin/perl
use strict;
use warnings;
use utf8;
sub strip_invalid {
my ($str, @chars) = @_;
map { $str =~ tr/$_//; } @chars;
return $str;
}
my @invalid = qw(a e i o u);
print strip_invalid("This is the super sample with vowels.\n", @invalid);
我只是想传递一个字符串到strip_invalid()
并有tr///
通过map
......我有什么错删除@invalid
的人物? (顺便说一句,它使用正则表达式)。