@TFGames · Post #1607 · 22.12.2023 г., 20:51
#ROM#RED#GAMES https://testflight.apple.com/join/QFsY24ZN
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
Пребарај: #rom
@TFGames · Post #1607 · 22.12.2023 г., 20:51
#ROM#RED#GAMES https://testflight.apple.com/join/QFsY24ZN
@YuKongA13579 · Post #874 · 28.06.2024 г., 10:12
小米 14 1.0.42.0 / 1.0.24.6.24 OS1.0.42.0.UNCCNXM: 笔记 - 修复 笔记附件数据超过20MB时,云同步失败的问题 文件管理器 - 优化 文件列表的加载速度 时钟 - 修复 闹钟响铃后,无法通过按键关闭闹钟的问题 手机管家 - 优化 体检分数计算规则,提升体检分数准确性 小部件 - 新增 出行助手功能,智能提醒火车、飞机行程,让出行更便捷(后续需在小米应用商店将智能助理应用升级至5.12.2及以上版本,短信升级至15.0.2.24及以上版本,MiAI引擎升级至2.2及以上版本时可支持) - 优化 负一屏加载速度 - 修复 点击音乐小部件时缩放动画异常的问题 - 修复 添加时钟小部件时,低概率出现的显示异常问题 状态栏、通知栏 - 修复 单行通知图标显示不全的问题 - 修复 空白通知仅展示图标的问题 - 修复 状态栏切换字体大小或切换三方字体后,5G图标显示不全的问题 计算器 - 优化 计算器按键灵敏度 相册 - 优化 视频同步策略,提升播放画面流畅度 - 修复 短时间产生大量图片时,相册预览图加载时间过长的问题 - 修复 云同步过程中照片时间丢失,导致日期错误的问题 - 修复 在云同步时删除照片后,照片再次出现的问题 - 修复 部分机型时光卡片无法播放的问题 - 修复 连续拍摄大量照片时,相册预览图显示异常的问题 系统 - 优化 应用预加载,提升应用启动速度 - 优化 启动动画策略,降低应用启动延迟 - 优化 应用切换时的系统资源回收策略,提升应用流畅度 - 优化 内存使用,提升抖音流畅度 - 修复 通知过多可能导致系统重启的问题 - 合入2024年6月安全补丁,增强系统安全 锁屏 - 优化 锁屏长按进入编辑的触发策略,减少误触 控制中心 - 修复 部分快捷开关低概率失效的问题 OS1.0.24.6.24.DEV: 系统 - 优化 应用预加载,提升应用启动速度 - 优化 启动动画策略,降低应用启动延迟 - 优化 应用切换时的系统资源回收策略,提升应用流畅度 - 优化 内存使用,提升抖音流畅度 #Xiaomi14#HyperOS#ROM#Recovery
@xiaomi_12tpro_updates · Post #338 · 22.05.2025 г., 00:53
#LineageOS#Unofficial#ROM#V#Diting LineageOS 22.2 - UNOFFICIAL | Android 15 Updated:05/22/'25 ▪️Download ▪️Sources ▪️Support ▪️Playground HQ ▪️Changelog ▪️Wiki ▪️XDA Notes: • Weekly automated build By@Adrianyyyy Follow@HawaiiReleases Join@Polywaiparrot
@xiaomi_12tpro_updates · Post #336 · 21.05.2025 г., 00:39
#LineageOS#Unofficial#ROM#V#Diting LineageOS 22.2 - UNOFFICIAL | Android 15 Updated:05/21/'25 ▪️Download ▪️Sources ▪️Support ▪️Playground HQ ▪️Changelog ▪️Wiki ▪️XDA Notes: • Weekly automated build By@Adrianyyyy Follow@HawaiiReleases Join@Polywaiparrot
@xiaomi_12tpro_updates · Post #333 · 19.05.2025 г., 20:24
#LineageOS#Unofficial#ROM#V#Diting LineageOS 22.2 - UNOFFICIAL | Android 15 Updated:05/19/'25 ▪️Download ▪️Sources ▪️Support ▪️Playground HQ ▪️Changelog ▪️Wiki ▪️XDA Notes: • Weekly automated build By@Adrianyyyy Follow @xiaomi_12tpro_updates Join @xiaomi12tpro_chat
@xiaomi_12tpro_updates · Post #316 · 22.04.2025 г., 19:29
#LineageOS#Unofficial#ROM#V#Diting LineageOS 22.2 - UNOFFICIAL | Android 15 Updated:04/22/'25 ▪️Download ▪️Sources ▪️Support ▪️Playground HQ ▪️Changelog ▪️Wiki ▪️XDA Notes: • Weekly automated build By@Adrianyyyy Follow @xiaomi_12tpro_updates Join @xiaomi12tpro_chat
@xiaomi_12tpro_updates · Post #236 · 27.01.2025 г., 21:23
#LineageOS#Unofficial#ROM#V#Diting LineageOS 22.1 - UNOFFICIAL | Android 15 Updated:01/27/'25 ▪️Download ▪️Sources ▪️Changelog ▪️Wiki ▪️XDA Notes: • Weekly automated build By@Adrianyyyy Follow @xiaomi_12tpro_updates Join @xiaomi12tpro_chat
@xiaomi_12tpro_updates · Post #472 · 03.11.2025 г., 21:48
#LineageOS#Unofficial#ROM#B#Diting LineageOS 23.0 - UNOFFICIAL | Android 16 Updated:11/03/'25 ▪️Download ▪️Sources ▪️Support ▪️Playground HQ ▪️Changelog ▪️Wiki ▪️XDA Notes: • Weekly automated build By@Adrianyyyy Follow@HawaiiReleases Join@Polywaiparrot
@xiaomi_12tpro_updates · Post #455 · 20.10.2025 г., 21:10
#LineageOS#Unofficial#ROM#B#Diting LineageOS 23.0 - UNOFFICIAL | Android 16 Updated:10/20/'25 ▪️Download ▪️Sources ▪️Support ▪️Playground HQ ▪️Changelog ▪️Wiki ▪️XDA Notes: • Weekly automated build By@Adrianyyyy Follow@HawaiiReleases Join@Polywaiparrot
@xiaomi_12tpro_updates · Post #445 · 13.10.2025 г., 21:27
#LineageOS#Unofficial#ROM#B#Diting LineageOS 23.0 - UNOFFICIAL | Android 16 Updated:10/13/'25 ▪️Download ▪️Sources ▪️Support ▪️Playground HQ ▪️Changelog ▪️Wiki ▪️XDA Notes: • Weekly automated build By@Adrianyyyy Follow@HawaiiReleases Join@Polywaiparrot
@xiaomi_12tpro_updates · Post #443 · 06.10.2025 г., 20:45
#LineageOS#Unofficial#ROM#B#Diting LineageOS 23.0 - UNOFFICIAL | Android 16 Updated:10/06/'25 ▪️Download ▪️Sources ▪️Support ▪️Playground HQ ▪️Changelog ▪️Wiki ▪️XDA Notes: • Weekly automated build By@Adrianyyyy Follow@HawaiiReleases Join@Polywaiparrot
@xiaomi_12tpro_updates · Post #442 · 29.09.2025 г., 20:37
#LineageOS#Unofficial#ROM#B#Diting LineageOS 23.0 - UNOFFICIAL | Android 16 Updated:09/29/'25 ▪️Download ▪️Sources ▪️Support ▪️Playground HQ ▪️Changelog ▪️Wiki ▪️XDA Notes: • Weekly automated build By@Adrianyyyy Follow@HawaiiReleases Join@Polywaiparrot