30. Строки
Обратите внимание на другие наши ресурсы: Youtube | Telegram | VK | Rutube | Dzen | Boosty
Что такое строки
В программировании строка - это последовательность символов.
Обычно символ представлен отдельным типом данных, целым числом или также является строкой, состоящей из одного символа.
Строки используются для представления текста.
Реализация строк
Строки могут быть реализованы несколькими способами, в зависимости от языка программирования и базовых структур данных.
Существуют два общих подхода к представлению строк:
-
Массив символов: В языке программирования C, строки представлены в виде массивов символов, где каждый элемент массива соответствует символу в строке. Конец строки обозначается символом '\0'.
-
Структура данных: В объектно-ориентированных языках, таких как C++ и Python, строки реализуются в виде объектов. Эти классы содержат строковые данные и предоставляют различные методы для взаимодействия со строкой.
Кодирование символов
Кодировка символов определяет, как символы представлены в двоичной форме, позволяя компьютерам хранить, передавать и интерпретировать текст.
В языке программирования C символы представлены в кодировке ANSI (American National Standards Institute), где для кодирования каждого символа выделяется 8 бит. Соответственно, всего кодировка может содержать символов.
Unicode - это более полный стандарт кодирования символов, который использует 16 бит для кодирования одного символа, позволяя представлять более широкий спектр символов ().
Также существует Unicode кодировка, в которой для кодирования каждого символа отводится 32 бита.
Unicode стал стандартом кодирования символов, а UTF-8 (Unicode Transformation Format) - кодировка переменной длины, в которой для кодирования каждого символа отводится от 1 до 4 байт, является наиболее широко используемой кодировкой Unicode.
Основные операции со строками
Конкатенация
Эта операция позволяет объединить две строки в одну, добавив одну строку в конец другой.
Например, существуют две строки:
A = "ABC"
B = "DEF"
Тогда результат конкатенации A и B будет равен строке "ABCDEF".
Но результат конкатенации B и A будет строкой "DEFABC".
Длина строки
Эта операция позволяет получить количество символов в строке.
Получение подстроки
Подстрока - часть исходной строки, которую можно получить путём удаления некоторого количества символов (возможно нуля) из начала и/или конца исходной строки.
Существует строка S = "ABCDE".
Подстрока S, начиная с первого символа длиной 3 будет равна "ABC".
Подстрока S, начиная со второго символа длиной 4 будет равна "BCDE"
Подстрока S, начиная с третьего символа длиной 1 будет равна "C".
Поиск подстроки
Это операция, позволяющая получить индекс первой встретившейся подстроки X в строке S, если она существует.
Существует строка S = "ABCDE", индексация символов в строке начинается с нуля.
Индекс подстроки X = "BC" в строке S равняется 1.
Индекс подстроки X = "D" в строке S равняется 3.
Подстроки X = "BCE" в строке S не существует.