Книга: Программирование на языке Ruby
2.1. Представление обычных строк
2.1. Представление обычных строк
Строка в Ruby — это последовательность 8-битовых байтов. Она не завершается нулевым символом, как в С, и, следовательно, может содержать такие символы. В строке могут быть символы с кодами больше 0xFF, но такие строки имеют смысл, лишь если выбран некоторый набор символов (кодировка). Дополнительную информацию о кодировках вы найдете в главе 4.
Простейшая строка в Ruby заключается в одиночные кавычки. Такие строки воспринимаются буквально; в качестве управляющих символов в них распознаются только экранированная одиночная кавычка ('
) и экранированный символ обратной косой черты ():
s1 = 'Это строка' # Это строка.
s2 = 'Г-жа О'Лири' # Г-жа О'Лири.
s3 = 'Смотри в С:TEMP' # Смотри в C:TEMP.
Строки, заключенные в двойные кавычки, обладают большей гибкостью. В них допустимо много других управляющих последовательностей, в частности для представления символов забоя, табуляции, возврата каретки и перевода строки. Можно также включать произвольные символы, представленные восьмеричными цифрами:
s1 = "Это знак табуляции: (t)"
s2 = "Несколько символов забоя: xyzbbb"
s3 = "Это тоже знак табуляции: 11"
s4 = "А это символы подачи звукового сигнала: а 07"
Внутри строки, заключенной в двойные кавычки, могут встречаться даже выражения (см. раздел 2.21).
- 2.1. Представление обычных строк
- 2.2. Альтернативная нотация для представления строк
- 2.3. Встроенные документы
- 2.4. Получение длины строки
- 2.5. Построчная обработка
- 2.6. Побайтовая обработка
- 2.7. Специализированное сравнение строк
- 2.8. Разбиение строки на лексемы
- 2.9. Форматирование строк
- 2.10. Строки в качестве объектов ввода/вывода
- 2.11. Управление регистром
- 2.12. Вычленение и замена подстрок
- 2.13. Подстановка в строках
- 2.14. Поиск в строке
- 2.15. Преобразование символов в коды ASCII и обратно
- 2.16. Явные и неявные преобразования
- 2.17. Дописывание в конец строки
- 2.18. Удаление хвостовых символов новой строки и прочих
- 2.19. Удаление лишних пропусков
- 2.20. Повтор строк
- 2.21. Включение выражений в строку
- 2.22. Отложенная интерполяция
- 2.23. Разбор данных, разделенных запятыми
- 2.24. Преобразование строки в число (десятичное или иное)
- 2.25. Кодирование и декодирование строк в кодировке rot13
- 2.26. Шифрование строк
- 2.27. Сжатие строк
- 2.28. Подсчет числа символов в строке
- 2.29. Обращение строки
- 2.30. Удаление дубликатов
- 2.31. Удаление заданных символов
- 2.32. Печать специальных символов
- 2.33. Генерирование последовательности строк
- 2.34. Вычисление 32-разрядного CRC
- 2.35. Вычисление МD5-свертки строки
- 2.36. Вычисление расстояния Левенштейна между двумя строками
- 2.37. base64-кодирование и декодирование
- 2.38. Кодирование и декодирование строк (uuencode/uudecode)
- 2.39. Замена символов табуляции пробелами и сворачивание пробелов в табуляторы
- 2.40. Цитирование текста
- 2.41. Заключение
- 2.38. Кодирование и декодирование строк (uuencode
- 2.2. Альтернативная нотация для представления строк
- Инструмент командной строки gbak
- Инструмент командной строки gfix
- Как выделить строку, столбец и ячейки
- Удобная операция объединения строк
- Работа со строками
- Преобразование строки в целое: stoi( )
- 4.2. Формализованное представление угроз ИБ от персонала
- ПРИМЕР: СОРТИРОВКА СТРОК
- 5 Текстовое представление данных: ясные протоколы лежат в основе хорошей практики
- Запросы, подсчитывающие строки