Как разбить строку на массив как целые числа Учитывая что-то вроде этого @grid = "4x3".split("x") Текущий результат - это массив строк "4", "3" Есть ли ярлык, чтобы разбить его на целые числа? Ответ 1 ruby-1.9.2-p136 :001 > left, right = "4x3".split("x").map(&:to_i) => [4, 3] ruby-1.9.2-p136 :002 > left => 4 ruby-1.9.2-p136 :003 > right => 3 Вызвать карту на результирующем массиве для преобразования в целые числа и присвоить каждое значение слева и справа соответственно. Ответ 2 "4x3".split("x").map(&:to_i) если вы не хотите быть слишком строгим, "4x3".split("x").map {|i| Integer(i) } если вы хотите генерировать исключения, если числа не выглядят как целые числа (скажем, "koi4xfish" ) Ответ 3 >> "4x3".split("x").map(&:to_i) => [4, 3] Ответ 4 Попробовали ли вы, если бы выражение парсер, упомянутое в ответе на ваш предыдущий вопрос, позволит вам это сделать?
Ответ 1 ruby-1.9.2-p136 :001 > left, right = "4x3".split("x").map(&:to_i) => [4, 3] ruby-1.9.2-p136 :002 > left => 4 ruby-1.9.2-p136 :003 > right => 3 Вызвать карту на результирующем массиве для преобразования в целые числа и присвоить каждое значение слева и справа соответственно.
Ответ 2 "4x3".split("x").map(&:to_i) если вы не хотите быть слишком строгим, "4x3".split("x").map {|i| Integer(i) } если вы хотите генерировать исключения, если числа не выглядят как целые числа (скажем, "koi4xfish" )
Ответ 4 Попробовали ли вы, если бы выражение парсер, упомянутое в ответе на ваш предыдущий вопрос, позволит вам это сделать?