Введение
В веб-разработке часто встречаются URL-адреса, содержащие читаемые слова вместо случайных символов. Эти читаемые слова называются слагами. Слага используются для того, чтобы сделать URL-адреса более удобочитаемыми и легкими для запоминания. В этом испытании вы создадите функцию, которая преобразует строку в слаг, пригодный для использования в URL-адресе.
Строка в слаг
Напишите функцию slugify(s), которая принимает строку s в качестве аргумента и возвращает слаг. Функция должна выполнять следующие операции:
- Преобразовать строку в нижний регистр и удалить любые начальные или конечные пробелы.
- Заменить все специальные символы (то есть любой символ, который не является буквой, цифрой, пробелом, дефисом или подчеркиванием) на пустую строку.
- Заменить все пробелы, дефисы и подчеркивания на один дефис.
- Удалить любые начальные или конечные дефисы.
import re
def slugify(s):
s = s.lower().strip()
s = re.sub(r'[^\w\s-]', '', s)
s = re.sub(r'[\s_-]+', '-', s)
s = re.sub(r'^-+|-+$', '', s)
return s
slugify('Hello World!') ## 'hello-world'
Резюме
В этом испытании вы узнали, как создать функцию, которая преобразует строку в слаг, пригодный для использования в URL-адресе. Вы использовали методы строк и регулярные выражения для удаления специальных символов и замены пробелов, дефисов и подчеркиваний на один дефис. Завершив это испытание, вы лучше поняли, как манипулировать строками в Python.