Перебор строк P1
Часть раздела Основы путешествия по Swift на Coddy. Урок 71 из 86.
Как и массивы, строки в Swift — это последовательности символов, по которым можно выполнять итерацию. Это позволяет легко обрабатывать текст посимвольно с помощью знакомого цикла for-in.
Когда вы перебираете строку, Swift предоставляет вам каждый символ по порядку:
let word = "Hello"
for char in word {
print(char)
}
// H
// e
// l
// l
// oКаждый char в цикле имеет тип Character, а не String. Это различие важно, когда нужно сравнивать или изменять отдельные символы.
Ты можешь использовать этот метод для анализа текста, например для подсчёта определённых символов:
let message = "banana"
var countA = 0
for char in message {
if char == "a" {
countA += 1
}
}
print(countA) // 3Обратите внимание: при сравнении символов мы заключаем один символ в кавычки, например "a". Swift автоматически воспринимает его как Character при сравнении с другим символом.
Задание
ЛегкоНапиши функцию countVowels, которая принимает text и возвращает общее количество гласных в строке.
Перебери каждый символ в строке и посчитай, сколько из них являются гласными (a, e, i, o, u). Учитывай как строчные, так и прописные гласные.
Параметры:
text(String): Строка для анализа
Возвращает: Общее количество гласных, найденных в строке (Int)
Пример: Если text равно "Hello World", функция должна вернуть 3 (гласные — e, o, o).
Попробуйте сами
func countVowels(text: String) -> Int {
// Напишите код здесь
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияСоставное присваиваниеПовторение: простая математикаОператоры сравнения7Основы ввода-вывода
Функция printИнтерполяция строкВвод с ReadLineПреобразование типовПовторение: до 120Повторение: истина или ложь2Переменные
Let и VarАннотации типовЧислаСтрокаЛогический типСоглашения об именованииПовторение — инициализация переменных5Операторы, часть 2
Логические операторы, часть 1Логические операторы, часть 2Повторение: простая логикаЛогические операторы, часть 3Тернарный оператор8Калькулятор разделения счёта
Приветственное сообщениеВвод данных14Массивы: продвинутый уровень
Срезы массивов. Часть 1Срезы массивов. Часть 2Операторы последовательностейМетод Contains3Опциональные значения
Что такое опциональные значенияИзвлечение значения с помощью if letGuard letОператор объединения с nilПовторение — безопасное извлечение значения6Принятие решений
Условный оператор ifIf — ElseПовторение: простой калькуляторОператор switchSwitch с диапазонами9Циклы
Цикл for-inЦикл whileЦикл repeat-whileПрерывание циклаПереход к следующей итерацииПовторение — факториалДиапазоны в циклахВложенный циклПовторение — динамический вводПотренируйтесь самостоятельно: Песочница Swift