- ベストアンサー
配列の中から文字列を探し、その番号を返す
ある配列の中から、'Address' という文字列を探し、 もし見つかれば、その配列の何番目に格納されている か値を返してくれる関数はないでしょうか。 例えば、 @test[0] = 'No'; @test[1] = 'Name'; @test[2] = 'Point'; @test[3] = 'Address'; とあった場合、かえってくる値が 3 という具合 です。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関数にはないんじゃないかな~。 CPANを探せば、モジュールのなかには、有るだろうけれど、 一般的ではないので、逆に分かりにくくなると思う。 ======================================== print &search('Address', @test); sub search($key_, @array_) { my $key_ = shift; my $i = -1; map { ++$i; return $i if /^$key_$/; } @_; } ======================================== 以上みたいな関数で良いのでは?
お礼
ありがとうございます。 このまま貼って使えました。感激です。 こういうのがサラッと書ける方が羨ましいです。 手持ちポイントが 20pt しかないのが残念で仕方 ありません。 心より感謝です。