- ベストアンサー
配列に要素が無い場合
お世話になっております。 配列 @L に 変数 $N という要素が無い場合に 処理をさせたいのですが、どういった条件文を 書けば良いのでしょうか。 宜しくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
あんまり効率を考えなくていいなら $Nが数字の時 $has = grep($_ == $N, @L); $Nが文字列の時 $has = grep($_ eq $N, @L); として 要素がないとき、$has==0なので if($has == 0){ #やりたい処理 } とすればいいと思います
その他の回答 (2)
- estea
- ベストアンサー率44% (39/87)
回答No.3
$N や @Lの各要素に 含まれていないと 分かっている文字を用いて,たとえば \t なら if( join( "\t" , @L) !~ /$N/ ) { 処理。 } ってのは? 効率?無視です。
質問者
お礼
御回答有り難う御座いました。 お礼が遅くなりすみません。 結局使わなくなってしまいましたので、御回答頂いた順にptをお入れしております。 ご容赦下さい。
- zebedeer
- ベストアンサー率66% (80/121)
回答No.2
こんな感じ? my %chk = map { $_,1 } @L; unless ($chk{$N}) { #hogehoge }
質問者
お礼
御回答有り難う御座いました。 お礼が遅くなりすみません。 結局使わなくなってしまいましたので、御回答頂いた順にptをお入れしております。 ご容赦下さい。
お礼
御回答有り難う御座いました。 お礼が遅くなりすみません。 結局使わなくなってしまいましたので、御回答頂いた順にptをお入れしております。 ご容赦下さい。