Программирование на языке Ruby
Шрифт:
2.7. Специализированное сравнение строк
В язык Ruby уже встроен механизм сравнения строк: строки сравниваются в привычном лексикографическом порядке (то есть на основе упорядочения, присущего данному набору символов). Но при желании можно задать собственные правила сравнения любой сложности.
Предположим,
Обратите внимание, что мы «сохранили» старый метод
Отметим также, что оператор
Допустим, что мы хотим сравнивать строки без учета регистра. Для этого есть встроенный метод
Есть и более простой способ:
Но это не все. Надо еще переопределить оператор
Теперь все строки будут сравниваться без учета регистра. И при всех операциях сортировки, которые определены в терминах метода
2.8. Разбиение строки на лексемы
Метод
По умолчанию разделителем является пробел, а точнее, значение специальной переменной
Второй параметр ограничивает число возвращаемых полей, при этом действуют следующие правила:
1. Если параметр опущен, то пустые поля в конце отбрасываются.
2. Если параметр — положительное число, то будет возвращено не более указанного числа полей (если необходимо, весь «хвост» строки помещается в последнее поле). Пустые поля в конце сохраняются.
3. Если параметр — отрицательное число, то количество возвращаемых полей не ограничено, а пустые поля в конце сохраняются.
Ниже приведены примеры:
Первопроходцы
638. Жизнь замечательных людей
Документальная литература:
биографии и мемуары
рейтинг книги
Сексуальная жизнь мужчины. Книга 1
Дом и Семья:
образовательная литература
здоровье и красота
рейтинг книги
Сказочная фантастика
Фантастика:
фэнтези
рейтинг книги
Год 1944 — «победный»
Великая Отечественная : Неизвестная война
Научно-образовательная:
военная история
рейтинг книги
Убить Зверстра
Детективы:
маньяки
рейтинг книги
Тварь. Кассеты Андерсона
Детективы:
крутой детектив
рейтинг книги
День вампира (сборник)
Фантастика:
социально-философская фантастика
боевая фантастика
ужасы и мистика
рейтинг книги
Богиня на кухне
Проза:
современная проза
рейтинг книги
Право на поединок
2. Волкодав
Фантастика:
героическая фантастика
рейтинг книги
Письма (1870)
Проза:
русская классическая проза
рейтинг книги