Обзор методов строк
Часть раздела Логика и управление потоком путешествия по Ruby на Coddy — урок 1 из 56.
Ruby предоставляет строкам обширную коллекцию встроенных методов для распространенных преобразований. Вам не нужны дополнительные библиотеки, они являются частью каждой создаваемой вами строки.
Некоторые из наиболее полезных меняют регистр или удаляют пробелы:
name = " Alice "
puts name.strip # "Alice"
puts name.upcase # " ALICE "
puts name.downcase # " alice "
puts name.reverse # " ecilA "Другие сообщают вам что-то о строке:
word = "hello"
puts word.length # 5
puts word.include?("ell") # true
puts word.start_with?("he") # trueБольшинство из них возвращают новую строку. Оригинал остается неизменным, если только вы не используете версию с восклицательным знаком (например, upcase!).
Задание
НовичокПрочитайте одну строку входных данных. Выведите на отдельных строках:
- Входные данные с удаленными начальными и конечными пробелами
- Это обрезанное значение в верхнем регистре
- Длину обрезанного значения
trueилиfalse: содержит ли обрезанное значение"ruby"(без учета регистра)?
Для входных данных Hello Ruby world вывод будет следующим:
Hello Ruby world
HELLO RUBY WORLD
16
trueШпаргалка
Общие строковые методы Ruby:
name = " Alice "
name.strip # "Alice" - удаляет начальные и конечные пробелы
name.upcase # " ALICE "
name.downcase # " alice "
name.reverse # " ecilA "
word = "hello"
word.length # 5
word.include?("ell") # true
word.start_with?("he") # trueБольшинство методов возвращают новую строку; используйте версию с восклицательным знаком (например, upcase!) для изменения на месте.
Попробуйте сами
input = gets.chomp
# TODO: вывести четыре требуемые строки
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Логика и управление потоком
1Строки в деталях
Обзор методов строкИнтерполяция строкИтерация по строкамSplit и JoinИтоги — String Weaver4Блоки, Proc и лямбды
Что такое блок?do..end против фигурных скобокКлючевое слово yieldПараметры блокаProc и лямбдыИтоги: пользовательский итератор7Хеши. Часть 2
Hash.new со значениями по умолчаниюИтерация по хешамВложенные хешиСлияние и преобразованиеИтоги — счетчик частоты10Проект — Учёт студентов
Обзор проектаДобавить студента2Диапазоны
Что такое диапазон?Методы диапазоновДиапазоны в Case / WhenПовторение — практика по диапазонам5Мощь Enumerable
Select и RejectЦепочки MapReduce / Injectcount, all?, any?, none?group_by и partitionsort_by, min_by, max_byИтоги — Data Pipeline8Продвинутые условные конструкции
Case с классами и RegexМножественные значения в whenТернарный операторОднострочные if / unlessПовторение: Классификатор оценок