@axelotlogistics · Post #720 · 22.05.2024 г., 10:54
#AXELOTLOGISTICSGAP в Ташкенте скоро начнется! Мы готовы, а вы?
Hashtags
TGINSIGHT SIMILAR POSTS
Изворен канал @pythonotes · Post #121 · 20 јул.
Регулярно требуется преобразовать какой-либо текст в максимально совместимый текст для URL, имени файла, имени объекта в каком-то софте и тд. Требования совместимости простые: в тексте должны быть только допустимые символы. Обычно это a-z, 0-9 и "_" или "-". То есть, только прописные буквы латинского алфавита и цифры (как пример). Допустим, нам нужно название статьи в блоге преобразовать в slug для добавления его в URL этой статьи. Как это лучше всего сделать? В Django по умолчанию есть готовая функция slugify для таких случаев. Но я её никогда не использую. Почему? Потому что её недостаточно! Приведём пример >>> from django.utils.text import slugify >>> slugify('This is a Title') 'this-is-a-title' Пока всё отлично >>> slugify('This is a "Title!"') 'this-is-a-title' Спец символы удалились, всё хорошо. >>> slugify('Это заголовок статьи') '' Вот и приехали 😢. Если текст не английский то буквы просто игнорируются. Можно это поправить >>> slugify('Это заголовок статьи', allow_unicode=True) 'это-заголовок-статьи' Но тогда мы не вписываемся в условие. У нас появилась кириллица в тексте. Так как я часто пишу сайты для русскоязычных пользователей эта проблема весьма актуальна. Я не использую стандартную функцию и всегда пишу свою. Оригинал я не беру в расчёт и пишу полностью свою функцию. И так, по порядку: 🔸1. Исходный текст: >>> text = 'Мой заголовок №10 😁!' Взял специально посложней со специальными символами. 🔸2. Транслит Необходимо сделать транслит всех символов в латиницу. Здесь очень выручает библиотека unidecode. Помимо простого транслита кириллицы в латиницу она умеет преобразовывать спец символы и иероглифы в текстовые аналоги. from unidecode import unidecode >>> unidecode("Ñ Σ ® µ ¶ ¼ 月 山") 'N S (r) u P 1/4 Yue Shan' Очень крутая библиотека, советую👍 В нашем случае получаем такое преобразование: >>> text = unidecode(text) >>> print(text) 'Moi zagolovok No. 10 !' Отличный транслит. Смайл просто удалился, хотя я ждал что-то вроде :). Ну и ладно, всë равно невалидные символы. А еще наш код уже поддерживает любой язык, будь то хинди или корейский. 🔸4. Фильтр символов Unidecode не занимается фильтрацией по недопустимым символам. Это мы делаем в следующем шаге через regex. Просто заменим все символы на "_" если они вне указанного диапазона. >>> text = re.sub(r'[^a-zA-Z0-9]+', '_', text) >>> print(text) 'Moi_zagolovok_No_10_' Символ "+" в паттерне выручает когда несколько недопустимых символов идут рядом. Все они заменяются на один символ "_". 🔸5. Slugify Осталось удалить лишние символы по краям и сделать нижний регистр >>> text = text.strip('_').lower() >>> print(text) 'moi_zagolovok_no_10' Получаем отличный slug! 😎 🌎 Полный код в виде функции. ______________ PS. Проверку что в строке остался хоть один допустимый символ я бы вынес в отдельную функцию. #libs#tricks#django
Пребарај: #axelotlogisticsgap
@axelotlogistics · Post #720 · 22.05.2024 г., 10:54
#AXELOTLOGISTICSGAP в Ташкенте скоро начнется! Мы готовы, а вы?
Hashtags
@axelot_ru · Post #689 · 26.09.2023 г., 08:44
Продолжаем наши традиционные встречи в рамках #AXELOTLOGISTICSGAP 28 сентября в 16:00 мы проведем еще один нетворкинг в дружеской обстановке в славном городе Тбилиси🇬🇪 Ждем всех в ресторане отеля Ramada by Wyndham☕️ Подробности читайте здесь.
Hashtags
@axelot_ru · Post #687 · 25.09.2023 г., 07:12
🥳Мы продолжаем международные нетворкинги #AXELOTLOGISTICSGAP На очереди гостеприимная Армения🇦🇲 Дата встречи - 26 сентября в 16:00 – Ереван🗓 Место встречи - открытая веранда с видом на горы в отеле Konyak ⛰ Подробнее: https://t.me/axelot_mezhdunarodnyj/34
Hashtags
@axelotlogistics · Post #615 · 22.09.2023 г., 14:24
Друзья! Напоминаем про #AXELOTLOGISTICSGAP🔥
Hashtags
@axelotlogistics · Post #614 · 22.09.2023 г., 14:24
Уххх, а до старта #AXELOTLOGISTICSGAP в Ереване и Тбилиси осталось совсем немного времени😎 Уже на следующей неделе произойдут два грандиозных события в мире логистики💪 А пока любуемся видео от Волгая Андрея😎 И если не успели ещё записаться, то бегом к Жданову Юрию и Волгаю Андрею
Hashtags
@axelot_ru · Post #607 · 08.08.2023 г., 13:26
#AXELOTLOGISTICSGAP
Hashtags
@axelotlogistics · Post #594 · 04.09.2023 г., 08:49
Так так так...Что тут у нас? 🤔 А это очередной #AXELOTLOGISTICSGAP, но в этот раз в Грузии 🇬🇪 Вау, уверен, что это будет полено, интересно и самое главное будет много представителей из разных сфер деловой Грузии 😎 Не забываем читать статью и помечать галочкой день в календаре 🗓 Подробности по ссылке. А если остались ещё вопросы, то задавайте их Жданову Юрию и Андрею Волгаю Нахвамдис!
Hashtags
@axelotlogistics · Post #565 · 03.08.2023 г., 09:38
#AXELOTLOGISTICSGAP на низком старте🔥 Ждем всех, кто зарегестрировался😎 Сегодня будет интересно и необычно, ждем всех🥳
Hashtags
@axelotlogistics · Post #475 · 06.04.2023 г., 10:15
4 апреля в Ташкенте собрали наших друзей и единомышленников в рамках #AXELOTLOGISTICSGAP. Все участники – из сферы торговли и логистики, кто-то уже работал с AXELOT, а кто-то только интересуется автоматизацией логистики. В дружеской обстановке удалось обсудить практически все вопросы от строительства новых складов до оптимизации и автоматизации цепей поставок. Было круто! Спасибо всем участникам! Следующий #AXELOTLOGISTICSGAP пройдёт в Алматы!
Hashtags
@axelotlogistics · Post #468 · 10.03.2023 г., 08:53
Логистический нетворкинг или #AXELOTLOGISTICSGAP Друзья, всем привет! Зачастую многие ассоциируют нетворкинг с протекционизмом и кумовством. Мы, в AXELOT, решили поставить в этом процессе жирную точку. Начиная с апреля 2023 года раз в месяц, мы будем проводить #AXELOTLOGISTICSGAP. Цели себе, как и всегда, мы ставим амбициозные, а именно создать «клуб логистических единомышленников» из людей, которым не всё равно, куда и как движется их родная компания/отрасль/страна. Мы считаем, что подобный узкоспециализированный профессиональный нетворкинг позволит устанавливать связи с единомышленниками, обмениваться идеями и опытом, что, в свою очередь, позволит повысить ценность логистики, применяемость новых технологий и лайфхаков. Первый #AXELOTLOGISTICSGAP пройдет в Ташкенте на первой неделе апреля. Эта встреча предоставит возможность экспертам в области логистики платформу для общения, обмена опытом и идеями. Встреча пройдет в теплой дружеской обстановке, поэтому площадкой выбран ресторан «The Choyxona».
Hashtags
@logareon · Post #86 · 14.05.2024 г., 09:09
Следующая неделя обещает быть жаркой🔥🔥🔥: 21 мая в 14:00 наши замечательные коллеги Дмитрий и Яна проведут вебинар по работе LOGAREON WMS с «ОБЯЗАТЕЛЬНОЙ МАРКИРОВКОЙ». Тема трендовая, хайповая, поэтому ждем всех на вебинаре/ 22 мая посещаем новый склад WMC Uzbekistan, Первого 3PL провайдера в Узбекистане, работающего на лучшей в мире WMS от LOGAREON. 22 же мая вечером, после захода солнца, совместно с нашими партнерами проводим традиционный #AXELOTLOGISTICSGAP во всеми полюбившейся The Choyxona 23 мая с 09.30 до 17.30 выступаем на Логистике Будущего в Radisson blu 4, просп. Амира Темура, 88, Grand Ball Room, где расскажем о текущем положении на рынке WMS, о перспективах и значимых трендах. Всем быть! До встречи!
Hashtags
@logareon · Post #30 · 03.08.2023 г., 10:12
Стартуем #AXELOTLOGISTICSGAP в Алматы.
Hashtags