Tinmarino:
FAQ:で楽には、どのように彼らのインデックスに基づいて、文字列からいくつかの文字を削除しますか?
私は3と8のインデックス1を削除したいと言います
xxx("0123456789", (1..3, 8).flat); # 045679
セバスチャン:
Shnipersons答えのバリアント:
my $a='0123456789';
with $a {$_=.comb[(^* ∖ (1..3, 8).flat).keys.sort].join};
say $a;
1行で:
say '0123456789'.comb[(^* ∖ (1..3, 8).flat).keys.sort].join;
または関数によって呼び出されます:
sub remove($str, $a) {
$str.comb[(^* ∖ $a.flat).keys.sort].join;
}
say '0123456789'.&remove: (1..3, 8);
またはSTRの増強と:
use MONKEY-TYPING;
augment class Str {
method remove($a) {
$.comb[(^* ∖ $a.flat).keys.sort].join;
}
};
say '0123456789'.remove: (1..3, 8);