Вы собираетесь загрузить пакет изображений или документов на сайт, в CMS или в генератор статических сайтов. Файлы называются как-то так: «Product Photo (Final) 2.jpg» и «Blog Header — Draft.png». Загрузите их как есть — получите уродливые URL-адреса с закодированными пробелами и спецсимволами, а то и вовсе CMS, отказывающуюся принимать загрузку из-за неподдерживаемых символов.
На самом деле вам нужен «слаг» — строчные буквы, разделение дефисами, никаких спецсимволов: «product-photo-final-2.jpg». Сделать такое преобразование вручную для нескольких файлов — вполне реально. Для пакета из пятидесяти изображений под новый сайт — уже нет.
Почему Finder не умеет слагировать имена файлов
Слагирование включает сразу несколько преобразований: перевод в нижний регистр, удаление пунктуации вроде скобок и тире, замену пробелов на дефисы. Инструмент переименования Finder умеет ровно одно из этого — буквальную замену текста — и не может ни перевести текст в нижний регистр, ни убрать разные спецсимволы за один проход. Понадобится несколько ручных раундов переименования, а регистр букв Finder всё равно не тронет вовсе.
Слагирование пакета через конвейер
Renym решает задачу слагирования, объединяя ровно нужные шаги: изменение регистра, удаление символов и замену пробелов на дефисы — всё в одном конвейере, применяемом ко всему пакету.
Шаг 1. Удаляем спецсимволы
Используйте regex, чтобы убрать скобки, тире и другую пунктуацию, которой не место в URL. Шаблон, находящий всё, что не является буквами, цифрами, пробелами и дефисами, очищает это за один шаг.
Шаг 2. Заменяем пробелы на дефисы
Найдите и замените каждый пробел на дефис — в соответствии со стандартными правилами формирования слагов для веба.
Шаг 3. Переводим всё в нижний регистр
Примените перевод в нижний регистр последним шагом, чтобы «Product-Photo-Final-2.jpg» превратилось в «product-photo-final-2.jpg» — чисто, предсказуемо и безопасно для любой структуры URL.
Настройте этот конвейер один раз и используйте повторно для каждого пакета материалов, который будете загружать в дальнейшем.