Строки — это фундаментальный строительный блок в программировании, и практически невозможно представить функциональную программу, не использующую строки.
В этой статье будут рассмотрены различные способы перевернуть строку в языке программирования Ruby.
Метод 1: Reverse
Самый простой способ перевернуть строку в Ruby — использовать встроенный метод реверса. Строка — это массив символов в последовательном порядке. Следовательно, мы можем использовать обратный метод, чтобы получить элементы входной строки в обратном порядке.
Например:
str = "Привет, мир!" puts str.reverse
Пример выше должен вернуть «Привет, мир!» задом наперед:
!рим ,тевирП
Обратный метод не влияет на исходную строку; он возвращает копию только в обратном порядке.
Чтобы повлиять на исходную строку, мы можем использовать обратное! метод.
str = "Привет, мир!".reverse! puts str
Метод 2: цикл
Мы также можем использовать цикл для переворота строки. В таком случае мы перебираем символы в строке и повторно применяем их к новой строке в обратном порядке.
Рассмотрим следующий пример:
src = "Привет, мир!" rev = '' for i in 1..src.length puts src[i] rev += src[src.length - i] end puts rev
Вы заметите, что результат аналогичен обратной функции.
!рим ,тевирП
Метод 3: обратное слово
Предположим, вы хотите перевернуть слово вместо одного символа? В таком сценарии мы можем разделить предоставленную строку и перевернуть каждое слово.
Взгляните на пример ниже:
word = "это полное предложение" word = word.split(" ").reverse!.join(" ") puts word
В приведенном выше примере мы разбиваем предложение на несколько слов (используя пробелы). Затем мы переворачиваем каждое слово и снова соединяем их.
Результат выглядит следующим образом:
предложение полное это
Метод 4: инъекция
Другой метод, который мы можем использовать для переворота строки, — это использовать метод inject. Он работает аналогично сокращению, и многие люди считают его псевдонимом.
Начнем с создания массива из указанной строки с помощью метода chars:
"Привет, мир!".chars
Когда у нас есть массив символов, мы можем вызвать метод inject.
puts "Привет, мир!".chars.inject {|x, y| y + x}
Результирующее значение — это переданная строка в обратном порядке.
Заключение
В этой статье рассматриваются различные методы, которые вы можете реализовать для переворота строки в Ruby. Не стесняйтесь исследовать больше или создавать свои собственные функции.