Получение первой группы чисел из массива в Ruby

#ruby

#ruby

Вопрос:

Хорошо, итак, я получил массив [23.0, 24.0, 0.0, 0.0, 0.0] , внутри которого есть как мне выбрать 23.0 его оттуда?

Комментарии:

1. Вы получаете эти значения в виде строки?

2. Отредактированный вопрос это массив

3. Вопрос был намного интереснее, когда он был строковым 🙁

Ответ №1:

 '23.4 24.0 0 0 0 0'[0..3]
  

возвращает 23.4

вы можете использовать разделение, если у вас переменная длина

 '15000 24.0 0 0 0'.split(' ')[0]
  

или совпадение:

 '23.4 0 0 0 0'.match(/[d.] /)
'23.4 0 0 0 0'.match(/(.*?) /)[1]
  

Комментарии:

1. неопределенный метод match' for 0.0:Float and undefined method split’ для 0.0:Float, есть ли другой метод для чисел с плавающей запятой?

2. Я предположил, что ваша переменная содержит строку. Что это за тип?

3. из массива, который вы просто используете your_array[0] для получения первого значения

Ответ №2:

Вы имеете в виду при работе со строковыми значениями? Вы можете индексировать строки, как если бы они были массивами, используя диапазон.

  > numbers = "23.0 24.0 0.0 0.0 0.0"
 > first_four = numbers[0..3]
=> "23.0"

 > numbers = "12500 0 0 0"
 > first_four = numbers[0..3]
=> "1250"
  

Ответ №3:

 "23.0 24.0 5 2 ".split()[0] 
  

Также работает для любого другого значения, разделенного пробелами.