$b =(?=.*犬)(?=.*柴):

ループ開始
 if ($a ~ /$b/){処理}
ループ終了

ある配列をループさせて $a にその値を入れて
数千回ループさせて検索しているのですが
ものすごく遅いです。

やりたい事は $aの文字列に ある文字(複数)があるかを高速に
検索したいです

もっと高速に検索する方法はないでしょうか。
ちなみに $b の部分は検索条件が何個でも対応できるようにしたいです。
どなたかお願いします、、、