Удаление символов из строки
Удаление символов из строки — это получение новой строки без отдельных символов или групп символов, которые удовлетворяют заданному условию. Например, из строки можно убрать все пробелы, цифры или каждую серию одинаковых символов.
Как выполняется удаление
Обычно строку просматривают слева направо — это удобно делать с помощью перебора строки. Для каждого символа проверяют условие. Если оно выполняется, символ пропускают; иначе добавляют его в результирующую строку. Такой способ связан с представлением строки как последовательности символов: строка как массив символов.
Важно заранее определить, что именно удаляется: один символ, все его вхождения или целая группа. Например, условие «удалить пробелы» удаляет каждый пробел, а условие «удалить серии пробелов» может удалить сразу несколько соседних пробелов как одну группу. Работа с группами символов называется обработкой серий; она отличается от простого просмотра каждого символа.
Пусть дана строка A1 B2!, а удалить нужно все цифры. По очереди проверяем символы: A сохраняем, 1 удаляем, пробел сохраняем, B сохраняем, 2 удаляем, ! сохраняем. Результат: A B!.
При удалении символ исчезает, поэтому длина строки уменьшается. При замене в строке один фрагмент преобразуется в другой: например, a заменяется на *, и длина может не измениться. Удаление — частный случай обработки строки, а не добавление пустого символа.
Что получится после удаления всех гласных из строки Информатика?
И, о, а, и, а удаляются, а согласные сохраняются.Если удаление выполняется прямо в изменяемом массиве, после удаления элементы справа сдвигаются. Поэтому при изменении строки во время обработки по символам важно не пропустить следующий символ. Надёжный учебный приём — строить новую строку из тех символов, которые нужно оставить.
Главное
- Удаление исключает из строки символы или группы, удовлетворяющие условию.
- При просмотре строки подходящие символы пропускают, остальные записывают в результат.
- Удаление отличается от замены: удалённый фрагмент не получает нового содержимого.