Menu
Coddy logo textTech

Регистр и удаление пробелов

Часть раздела Логика и управление потоком путешествия по Swift на Coddy — урок 2 из 56.

Методы изменения регистра возвращают новые строки, они не изменяют оригинал. Используйте их для текста, полученного от пользователя, перед его сравнением.

let raw = "  Hello World  "
print(raw.uppercased())          // "  HELLO WORLD  "
print(raw.lowercased())          // "  hello world  "

Чтобы удалить начальные и конечные пробелы, используйте trimmingCharacters(in:) из Foundation (уже импортировано на этой платформе):

let cleaned = raw.trimmingCharacters(in: .whitespaces)
print(cleaned)                   // "Hello World"
print(cleaned.count)             // 11

.whitespaces охватывает пробелы и знаки табуляции. Используйте .whitespacesAndNewlines, когда входные данные могут содержать завершающий \n.

challenge icon

Задание

Новичок

Прочитайте две строки ввода. Рассматривайте их обе как строки для сравнения без учета регистра, игнорируя окружающие пробелы. Выведите:

  1. match, если очищенные версии в нижнем регистре равны, в противном случае — differ
  2. Очищенную (без пробелов по краям) версию первой строки в верхнем регистре

Для входных данных Hello World в первой строке и HELLO world во второй, вывод будет следующим:

match
HELLO WORLD

Шпаргалка

Методы изменения регистра строк возвращают новые строки (исходная строка не изменяется):

str.uppercased()   // "hello" → "HELLO"
str.lowercased()   // "HELLO" → "hello"

Удалите начальные и конечные пробелы с помощью trimmingCharacters(in:):

let cleaned = raw.trimmingCharacters(in: .whitespaces)         // пробелы и табуляция
let cleaned = raw.trimmingCharacters(in: .whitespacesAndNewlines) // включает \n

Попробуйте сами

let a = readLine()!
let b = readLine()!

// TODO: обрезать пробелы + привести к нижнему регистру для сравнения; вывести match/differ, затем a в верхнем регистре с обрезанием пробелов
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Логика и управление потоком