СПРАВОЧНИК
Методы Ruby
String, Array, Hash, Integer и Enumerable
Алфавитно-тематический справочник самых ходовых методов Ruby. Для каждого метода — сигнатура, короткое описание и рабочий пример с результатом. Методы сгруппированы по классам: String, Array, Hash, Integer/Numeric и Enumerable/Range.
Array 30
Array#compact
arr.compactУдаляет элементы nil из массива.Array#drop
arr.drop(n)Возвращает массив без первых n элементов.Array#each
arr.each { |x| ... }Перебирает элементы массива.Array#each_with_index
arr.each_with_index { |x, i| ... }Перебирает элементы вместе с их индексами.Array#find
arr.find { |x| ... }Возвращает первый элемент, удовлетворяющий условию.Array#first
arr.first(n)Возвращает первый элемент или первые n элементов.Array#flatten
arr.flatten(depth)Разворачивает вложенные массивы в плоский.Array#include?
arr.include?(obj)Проверяет наличие элемента в массиве.Array#index
arr.index(obj)Возвращает индекс первого вхождения элемента.Array#join
arr.join(separator = '')Объединяет элементы в строку.Array#last
arr.last(n)Возвращает последний элемент или последние n элементов.Array#length
arr.lengthВозвращает количество элементов массива.Array#map
arr.map { |x| ... }Преобразует каждый элемент по блоку и возвращает новый массив.Array#max
arr.maxВозвращает максимальный элемент.Array#min
arr.minВозвращает минимальный элемент.Array#pop
arr.pop(n = 1)Удаляет и возвращает последний элемент.Array#push
arr.push(obj, ...)Добавляет элементы в конец массива.Array#reduce
arr.reduce(init) { |acc, x| ... }Сворачивает массив в одно значение.Array#reject
arr.reject { |x| ... }Удаляет элементы, для которых блок вернул истину.Array#reverse
arr.reverseВозвращает массив с элементами в обратном порядке.Array#sample
arr.sample(n)Возвращает случайный элемент массива.Array#select
arr.select { |x| ... }Оставляет элементы, для которых блок вернул истину.Array#shift
arr.shift(n = 1)Удаляет и возвращает первый элемент.Array#sort
arr.sort { |a, b| ... }Сортирует элементы массива.Array#sort_by
arr.sort_by { |x| ... }Сортирует элементы по значению, вычисленному блоком.Array#sum
arr.sum(init = 0)Возвращает сумму элементов.Array#take
arr.take(n)Возвращает первые n элементов.Array#uniq
arr.uniqУдаляет дубликаты, сохраняя порядок.Array#unshift
arr.unshift(obj, ...)Добавляет элементы в начало массива.Array#zip
arr.zip(other_arr, ...)Объединяет массивы поэлементно.Enumerable / Range 9
Enumerable#all?
enum.all? { |x| ... }Проверяет, удовлетворяют ли все элементы условию.Enumerable#any?
enum.any? { |x| ... }Проверяет, удовлетворяет ли хотя бы один элемент условию.Enumerable#count
enum.count { |x| ... }Считает количество элементов.Enumerable#group_by
enum.group_by { |x| ... }Группирует элементы по ключу, вычисленному блоком.Enumerable#max_by
enum.max_by { |x| ... }Возвращает элемент с максимальным значением по блоку.Enumerable#min_by
enum.min_by { |x| ... }Возвращает элемент с минимальным значением по блоку.Enumerable#none?
enum.none? { |x| ... }Проверяет, что ни один элемент не удовлетворяет условию.Enumerable#partition
enum.partition { |x| ... }Разделяет элементы на две группы по условию.Range#new
(begin..end)Создаёт диапазон значений.Hash 12
Hash#count
hash.countВозвращает количество пар в хеше.Hash#dig
hash.dig(key, ...)Извлекает значение из вложенных хешей.Hash#each
hash.each { |k, v| ... }Перебирает пары ключ-значение.Hash#fetch
hash.fetch(key, default)Возвращает значение по ключу с контролем отсутствия.Hash#key?
hash.key?(key)Проверяет наличие ключа.Hash#keys
hash.keysВозвращает массив всех ключей.Hash#map
hash.map { |k, v| ... }Преобразует пары и возвращает массив.Hash#merge
hash.merge(other_hash)Объединяет два хеша.Hash#select
hash.select { |k, v| ... }Оставляет пары, для которых блок вернул истину.Hash#store
hash.store(key, value)Добавляет или обновляет пару ключ-значение.Hash#to_a
hash.to_aПреобразует хеш в массив пар.Hash#values
hash.valuesВозвращает массив всех значений.Integer / Numeric 10
Integer#abs
int.absВозвращает абсолютное значение числа.Integer#digits
int.digits(base = 10)Возвращает массив цифр числа в обратном порядке.Integer#downto
int.downto(limit) { |i| ... }Перебирает числа от текущего до указанного по убыванию.Integer#even?
int.even?Проверяет, является ли число чётным.Integer#gcd
int.gcd(other)Возвращает наибольший общий делитель.Integer#odd?
int.odd?Проверяет, является ли число нечётным.Integer#times
int.times { |i| ... }Повторяет блок заданное число раз.Integer#to_s
int.to_s(base = 10)Преобразует число в строку, опционально в заданной системе счисления.Integer#upto
int.upto(limit) { |i| ... }Перебирает числа от текущего до указанного по возрастанию.Numeric#step
num.step(limit, step) { |i| ... }Перебирает числа с заданным шагом.String 19
String#*
str * integerПовторяет строку заданное число раз.String#capitalize
str.capitalizeДелает первую букву заглавной, остальные строчными.String#center
str.center(width, padstr = ' ')Центрирует строку, дополняя её до нужной ширины.String#chars
str.charsВозвращает массив символов строки.String#chomp
str.chomp(suffix = $/)Удаляет завершающий перевод строки или указанный суффикс.String#downcase
str.downcaseПереводит все буквы в нижний регистр.String#gsub
str.gsub(pattern, replacement)Заменяет все вхождения подстроки или шаблона.String#include?
str.include?(other_str)Проверяет, содержит ли строка подстроку.String#length
str.lengthВозвращает количество символов в строке.String#ljust
str.ljust(width, padstr = ' ')Выравнивает строку по левому краю, дополняя справа.String#reverse
str.reverseПереворачивает строку.String#rjust
str.rjust(width, padstr = ' ')Выравнивает строку по правому краю, дополняя слева.String#slice
str.slice(index, length)Извлекает подстроку по индексу, диапазону или шаблону.String#split
str.split(pattern = nil, limit = 0)Разбивает строку на массив подстрок.String#strip
str.stripУдаляет пробелы в начале и в конце строки.String#sub
str.sub(pattern, replacement)Заменяет только первое вхождение подстроки.String#to_i
str.to_i(base = 10)Преобразует начало строки в целое число.String#to_sym
str.to_symПреобразует строку в символ.String#upcase
str.upcaseПереводит все буквы в верхний регистр.