Perl5.10から実装済み 「~~」で表される 真か偽を返す 2つ被演算子(オペランド)をどのように比較するのか自ら判断する. 例 #スマートマッチ演算子 say "I found Fred in the name !" if $name ~~ /Fred/ #等価 print "I found Fred in the name !" if $name =~ /Fred/ 例 マッチタイプ %a ~~~ %b ハッシュのキーが全て等しい %a ~~ @b 少なくとも%aのキーの1つが@bに含まれている %a ~~ /Fred/ 少なくとも%aのキーの1つがパターンにマッチする @a ~~ @b 配列の内容が等しい @a ~~ /Fred/ 少なくとも1つの要素がパターンにマッチする @a ~~ 123 少なくともひとつの要素が123である @a ~~ 'fred' 少なくともひとつの要素