-1

コンマで区切られた数字を含む文字列が与えられた場合、それらに対して数学演算を実行することは可能ですか?

たとえば、どのように文字列を取得し、"123,456,789"その中から数値を抽出し、またはのような操作を実行できます123 + 456456 - 123?

4

4 に答える 4

3

injectsplit、およびmapメソッドを使用できます。

"123,32,3,4,5,6, 2,34".split(",").map(&:to_i).inject(&:+)

eval も使用できますが、eval遅くて時間がかかります。

于 2013-04-18T09:28:07.683 に答える
1

を使用して、配列内の文字列を分割できますsplit(',') 。現在、to_i任意の配列要素で使用できます。お役に立てば幸いです。

于 2013-04-18T08:19:18.450 に答える
-1

どうぞ:

s = "123,456,789"

s.split(',').reduce(0) do |result, number|
  result = result + number.to_i
end

reduceブロック内の記号を+から-または必要なものに変更します。

于 2013-04-18T08:17:21.400 に答える