TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #146 · 16 сеп.

Функция sub в regex может принимать функцию в качестве аргумента repl. 📄 Из документации: If repl is a function, it is called for every non-overlapping occurrence of pattern. The function takes a single match object argument, and returns the replacement string. То есть для каждого совпадения будет вызвана функция для вычисления замены вместо замены на одну и ту же строку для всех совпадений. Иными словами, для замены разных совпадений на разные строки не потребуется запускать re.sub() много раз для каждой строки замены. Достаточно определить функцию, которая вернёт строку для каждого из совпадений. Описание слишком запутанное🤔, давайте лучше рассмотрим на простом примере: Создаем карту замены. То есть какие строки на какие требуется менять. remap = { 'раз': '1', 'два': '2', 'три': '3', 'четыре': '4', 'пять': '5', } Пишем функцию поиска строки для замены. Единственным аргументом будет объект re.Match. Используя данные этого объекта мы вычисляем замену on-the-fly! def get_str(match: re.Match): word = match.group(1) return remap.get(word.lower()) or word Пример текста. text = '''Раз Два Три Четыре Пять Вместе будем мы считать Пять Четыре Три Два Раз Мы считать научим вас ''' Теперь запускаем re.sub и вместо строки замены (repl) подаём имя функции. (Данный паттерн ищет отдельные слова в тексте) >>> print(re.sub(r'(\w+)', get_str, text)) 1 2 3 4 5 Вместе будем мы считать 5 4 3 2 1 Мы считать научим вас Думаю, достаточно наглядно 🤓 #libs#regex

Hashtags

Резултати

Пронајдени 1 слични објави

Пребарај: #openvz

当前筛选 #openvz清除筛选

#IDC#灵车#月抛#无质保#无退款#无技术支持#OpenVZ#NAT#VPS#灵车 中国上海世纪互联BGP - 中国香港 Azure 隧道 NAT VPS 端内延迟 30ms,本产品为月抛灵车产品,不支持任何工单技术支持、质保、退款 Azure.SH-HK.NAT.256MB CPU:1 vCPU 内存:256MB 硬盘:1GB SSD 地址:共享 IPv4 x2(上海入口 x1 + 香港出口 x1) 带宽:1000Mbps共享峰值带宽 端口:21个自定义端口(TCP+UDP) 流量:500GB 双向流量 一次性付款 ¥10 ------------------------- 注意事项 - 带宽不允许长时间占满 - 带宽和计算资源共享 - OpenVZ 虚拟化 - 使用请遵守中国法律 - 没有退款政策 - 没有技术支持 - 没有质量保证 - 灵车产品非正规产品 ------------------------- 下单地址: https://ccxyun.com/cart.php?gid=16 频道: @ccxychannel 群组: @ccxyun