Ответ
Регулярное выражение (RegEx) — это специальная текстовая строка, описывающая шаблон поиска в тексте. Это мощный инструмент для поиска, замены и валидации строк.
Основные элементы синтаксиса:
d— Любая цифра.w— Буквенно-цифровой символ или подчеркивание.[a-z]— Диапазон символов (отaдоz).+— Одно или более повторений предыдущего элемента.*— Ноль или более повторений.^и$— Начало и конец строки соответственно.(a|b)— Альтернатива (aилиb).
Пример в Swift (поиск чисел в строке):
let text = "Заказ №12345 на сумму 99.99$"
let pattern = #"d+(.d+)?"# // Ищет целые и дробные числа
if let regex = try? NSRegularExpression(pattern: pattern) {
let matches = regex.matches(in: text, range: NSRange(text.startIndex..., in: text))
for match in matches {
if let range = Range(match.range, in: text) {
print("Найдено: (text[range])") // 12345, 99.99
}
}
}
Типичное применение:
- Валидация: Email, телефоны, пароли.
- Парсинг: Извлечение данных из логов или неструктурированного текста.
- Поиск и замена: Сложные текстовые операции в редакторах кода.