2017-01-10 11 views
-1

私はハッシュをマッピングして数値の配列を作成しています。私が完全に捨てたい整数ではない要素がいくつかあります。誰もそれを行う方法を知っていますか?または、その配列を再度マップしてそこに引き出す必要がありますか?ルビ配列から非整数を取り除く

+1

「整数」を定義しますか?彼らは弦ですか?実際の整数値ですか?質問を編集していくつかのサンプルデータを追加して、ここに特定のコンテキストを追加することができれば、本当に役に立ちます。 – tadman

+0

実際には、1.543,0.753,0.385のような3に丸められた浮動小数点数の集合であり、次にSoまたは文字列です。 –

+0

@BethKnight SoSはこの意味で何を意味しますか? –

答えて

6

あなたはすでにあなたの入力上の任意の変換を行ってきた場合、それはあなたが欲しいものを選択する簡単な場合でなければなりません:

フロートだものを探します
hash.values.grep(Float) 

場合、またはフロート由来あなたのコードはそれほどエキゾチックなので、それは起こっている。

grepツールは非常に汎用性が高いことに注意してください。ほとんどの人は文字列や正規表現でしか動作しないと想定していますが、実際にはそれよりも優れています。

+2

'grep 'の力を忘れないでください。配列に浮動小数点数と整数が含まれていて、 '[2、3.1、:cat] .grep(Numeric)#=> [2、3.1]'を 'Numeric === 2#=> true ' 'Numeric === 3.1#=> true'となります。 –

関連する問題