@Hiyase_Admin · Post #167 · 01.04.2024 г., 01:17
#LOCK: Chat: 冷曦喵の猫窝 Admin: 冷曦[Hiyase] 🏳️🌈 Message link: link The following locks have been locked: - comment
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
Пребарај: #lock
@Hiyase_Admin · Post #167 · 01.04.2024 г., 01:17
#LOCK: Chat: 冷曦喵の猫窝 Admin: 冷曦[Hiyase] 🏳️🌈 Message link: link The following locks have been locked: - comment
Hashtags
@Hiyase_Admin · Post #160 · 01.04.2024 г., 00:37
#LOCK: Chat: 冷曦喵の猫窝 Admin: 冷曦[Hiyase] 🏳️🌈 Message link: link The following locks have been locked: - anonchannel
Hashtags
@tginfoid · Post #282 · 17.05.2022 г., 13:22
Hong Kong sedang mempertimbangkan untuk memblokir Telegram Pada hari Selasa, surat kabar lokal Sing Tao Daily melaporkan, yang merupakan Komisaris Data Privasi Pribadi sedang mempertimbangkan untuk membatasi akses Telegram untuk mendistribusikan data pribadi pejabat pemerintah dan warga negara. Pihak berwenang sejauh ini menghindari pembatasan Internet yang serupa dengan China, di mana banyak layanan asing dilarang oleh firewall besar China. Perwakilan Telegram berkomentar kepada Bloomberg tentang situasinya: Telegram mendukung kebebasan berbicara dan hak pengguna untuk memprotes secara damai. Namun, konten yang mengungkapkan informasi pribadi tanpa persetujuan (doxxing) tidak diperbolehkan dan dihapus secara berkala. Pada tahun 2020, juru bicara Telegram Mikhail Ravdovnikas melaporkan bahwa Telegram tidak bermaksud untuk memproses permintaan data apa pun yang berkaitan dengan penggunanya di Hong Kong sampai ada konsensus internasional tentang perubahan politik saat ini di kota. Pada bulan September, Hong Kong memperketat undang-undang privasi data untuk mencegah doxxing. Memblokir Telegram bisa menjadi langkah logis dalam memerangi doxing setelah pengunjuk rasa 2019 merilis rincian tentang petugas polisi dan pegawai pemerintah lainnya. Pejabat akan mempertimbangkan opini publik sebelum mengambil keputusan. Baca berita tentang Telegram dalam bahasa Mandarin di @tginfocn #hongkong#lock
@QQZYDAPP · Post #5257 · 20.02.2026 г., 12:42
⭐️【资源名称】应用锁 App Lock XLock Pro v1.8.9专业版 23 🤖【适用平台】: #Andoid 🧱【资源介绍】 随着我们的手机越来越智能,我们的隐私也同样一一的都储存在了里面,于是隐私安全就成为了重中之重的大事。恩!您可以考虑试试今天这款应用锁「AppLock」软件。 🟡在线下载:点击下载 📁#应用锁#Lock#安卓软件
@wangzhuanzhan · Post #32658 · 09.09.2024 г., 05:29
L-l两l杆g大d烟y枪q- 两杆大烟枪 Lock, Stock and Two Smoking Barrels (1998) 直达链接:https://pan.quark.cn/s/83a254a027fd #两杆大烟枪#够姜四小强#两根枪管 #魔高一丈#两杆老烟枪#两只老烟枪 #Lock, Stock and Two Smoking Barrels 链接:https://link3.cc/sf_com #电影#喜剧#美国#90年代
@botsgram_cu · Post #3347 · 30.12.2020 г., 23:59
@Cleanrobot Qué puede hacer este bot? Un bot de administración que utiliza la API oficial de Bot. Idioma: Inglés (visto en @BotsGram_cu) #lock, #mute, #filter, #ban, #unban, #administration, #restrict, #promote, #rules, #welcome