@memesrubati · Post #27155 · 31.10.2025 г., 10:26
#gpt
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
Пребарај: #gpt
@memesrubati · Post #27155 · 31.10.2025 г., 10:26
#gpt
Hashtags
@memesrubati · Post #27068 · 01.10.2025 г., 19:06
#gpt
Hashtags
@memesrubati · Post #26938 · 28.07.2025 г., 12:58
#gpt
Hashtags
@memesrubati · Post #26872 · 02.07.2025 г., 22:03
#gpt
Hashtags
@memesrubati · Post #26397 · 30.03.2025 г., 19:01
#gpt
Hashtags
@memesrubati · Post #26322 · 11.03.2025 г., 22:41
#gpt
Hashtags
@Kompyuter_Akademiyasi · Post #6599 · 09.09.2024 г., 07:29
Assalomu alaykum akademiklar! Kompyuter, IT va zamonaviy texnologiyalar bo'yicha savol-javoblar o'tkazadigan guruhimiz (@k_a_chat) borligidan xabaringiz bor. Endilikda mana shu guruhimizga #gpt buyrug'i bilan birgalikda savolingizni jo'natsangiz guruhdan chiqmagan holatda savolingizga javobni botimiz ChatGPT'dan olib beradi. ❓Savolni berishga namuna:#gpt GPU nimaligi haqida qisqacha ma'lumot ber. Ushbu imkoniyat hozirda test rejimida ishlayapti, ishlash davomida kelajagini hal qilamiz 😉. 🗯Guruhimiz:@k_a_chat 🔄Tah: GPT-4 modeli asosida ishlashni boshladi. Endi savollaringizga anchagina sifatli javoblar olishingiz mumkin 😎.
Hashtags
@Kompyuter_Akademiyasi · Post #6579 · 30.08.2024 г., 05:01
Assalomu alaykum akademiklar! Kompyuter, IT va zamonaviy texnologiyalar bo'yicha savol-javoblar o'tkazadigan guruhimiz (@k_a_chat) borligidan xabaringiz bor. Endilikda mana shu guruhimizga #gpt buyrug'i bilan birgalikda savolingizni jo'natsangiz guruhdan chiqmagan holatda savolingizga javobni botimiz ChatGPT'dan olib beradi. ❓Savolni berishga namuna:#gpt GPU nimaligi haqida qisqacha ma'lumot ber. Ushbu imkoniyat hozirda test rejimida ishlayapti, ishlash davomida kelajagini hal qilamiz 😉. 🗯Guruhimiz:@k_a_chat 🔄Tah: GPT-4 modeli asosida ishlashni boshladi. Endi savollaringizga anchagina sifatli javoblar olishingiz mumkin 😎.
Hashtags
@jdmaxchannel · Post #5776 · 15.04.2026 г., 14:46
Друзья, запустили сайт-версию сервиса: ai.jdmax.ru • Лучше работает с большими текстами • Удобнее для таблиц и формул • Можно вести несколько диалогов Если хотите более удобный формат, чем бот — пробуем: 👉ai.jdmax.ru👈 JDMax #gpt
Hashtags
@menshikovapropr · Post #4003 · 13.02.2026 г., 05:50
Кое что он все-таки уловил )) С пятницей вас дорогие, 13 февраля. Не натворите плохих новостей, завтра же День влюбленных #gpt
Hashtags
@dingyue_Center · Post #3599 · 18.09.2025 г., 11:53
#gpt 走邀请注册+100$共200$ 模型:gpt-5,gpt-4o 通过ld账户或GitHub登录
Hashtags
@dingyue_Center · Post #3555 · 06.09.2025 г., 06:03
#gpt 🟢CHAT GPT PLUS 6个月教程 如何兑换我的 ChatGPT Plus 福利? 要获得 6 个月免费的 ChatGPT Plus 福利,请按照以下步骤操作: 1 - 激活你的 Rappi Pro Black 会员。此福利仅限于拥有有效 Pro Black 订阅的用户。如果你还没有,可以在 Rappi 应用程序中使用任何类型的 Braintree 信用卡订阅。 2 - 检查你的邮箱。在激活会员后的 48 小时内,你将收到一封包含专属兑换码以及兑换链接的邮件。 3 - 只需点击邮件中的兑换码,创建或登录 ChatGPT 账号,并在其平台上完成兑换。 👀 提示:你可以直接问 ChatGPT 如何兑换,并将兑换码分享给它。 ⚠️ 注意:此福利仅适用于从未拥有过付费 ChatGPT 账号(包括 Plus 或 Pro)的用户。 如果你的账号曾经有过付费订阅,即使现在已过期,也无法使用此兑换码。 🟢CHATGPT 3个月方法 🎁 免费获取 ChatGPT Plus 3 个月: 1️⃣ 使用 越南 VPN(IP 切换到越南) 2️⃣ 在 Play 商店安装 越南 Shopee 3️⃣ 打开 Shopee 应用,进入【Me】>【See all activities】>【Shopee VIP】 4️⃣ 激活 Shopee VIP 1个月免费试用 5️⃣ 获取 ChatGPT 3 个月促销码 📌 此方法只适用于 印尼和泰国。 你也可以尝试使用 印尼或泰国 VPN 💗
Hashtags