Tag: regex

к какой группе относится обратная ссылка, когда используется операция sub ()?

Следующий код: >>> text = "imagine a new *world*, a *magic* world" >>> pattern = re.compile(r'\*(.*?)\*') >>> pattern.sub(r"<b>\1<\b>", text) выходы: imagine a new <b>world<\x08>, a <\b>magic<\x08> world У меня здесь две проблемы, 1.) Я не понимаю, почему обратная ссылка '\1' изменяет магическую часть текста? Я прочитал, что '\1' относится к первой группе, которая была захвачена. […]

Как скомпилировать несколько множественных регулярных выражений за один раз? Это более эффективно? – python

Скажем, у меня есть код как таковой: import re docid_re = re.compile(r'<DOCID>([^>]+)</DOCID>') doctype_re = re.compile(r'<DOCTYPE SOURCE="[^"]+">([^>]+)</DOCTYPE>') datetime_re = re.compile(r'<DATETIME>([^>]+)</DATETIME>') Я мог бы также сделать это: >>> import re >>> docid_re = r'<DOCID>([^>]+)</DOCID>' >>> doctype_re = r'<DOCTYPE SOURCE="[^"]+">([^>]+)</DOCTYPE>' >>> datetime_re = r'<DATETIME>([^>]+)</DATETIME>' >>> docid_re, doctype_re, datetime_re = map(re.compile, [docid_re, doctype_re, datetime_re]) >>> docid_re <_sre.SRE_Pattern object at […]

Анализ IP-адреса / сети из текстового файла с использованием python

У меня есть следующий текстовый файл, который мне понадобится для разбора IP-адресов. Текстовый файл имеет форму abc 10.1.1.1/32 aabbcc def 11.2.0.0/16 eeffgg efg 0.0.0.0/0 ddeeff Другими словами, в составе файла журнала существует множество IP-сетей. Выход должен быть представлен ниже: 10.1.1.1/32 11.2.0.0/16 0.0.0.0/0 У меня есть код ниже, но не выводит требуемую информацию file = open(filename, […]

Проблема с созданием текстового файла, когда новые строки создаются, когда они не действительно EOL

Я импортирую некоторые текстовые данные из набора файлов, которые я создал в python (преобразование метаданных / xml записей в текст) в excel. В основном он отлично работает, за исключением того, что в точках, где текст просто находится в абзаце, вставлены новые строки. Это проблема в процессе создания файла. Возможно ли автоматическое очистку данных для сохранения […]

Как разрезать нумерованные списки в подсписках

Я открыл файл и использовал readlines() и split() с regex '\t' для удаления TAB, и это привело к следующим спискам: ["1", "cats", "–,"] ["2", "chase", "–,"] ["3", "dogs", "–,"] ["1", "the", "–,"] ["2", "car", "–,"] ["3", "is", "–,"] ["4", "gray", "–,"] Теперь я хочу извлечь и нарезать это в подсписках, таких как «кошки преследуют собак» […]

Регулярное выражение – число с пробелами и десятичная запятая

Я хотел бы написать регулярное выражение для следующего типа строк в Pyhton: 1 100 1 567 865 1 474 388 346 т.е. числа, отделенные от тысячи. Вот мое регулярное выражение: г "(\ d {1,3} (?: \ S * \ d {3}) *) и он отлично работает. Однако я также хочу разобрать 1 100 34848 1 […]

Python \ ufffd после замены китайским контентом

После того как мы нашли ответ на этот вопрос, мы столкнулись со следующим необычным поведением: Наше регулярное выражение: [\\((\\[{【]+(\\w+|\\s+|\\S+|\\W+)?[)\\)\\]}】]+ Мы пытаемся сопоставить весь контент внутри любого типа скобок, включая скобки. Исходный текст: 物理化学名校考研真题详解 (理工科考研辅导系列(化学生物类)) Результат: 物 研真题详解 Код для замены: delimiter = ' ' if localization == 'CN': delimiter = '' p = re.compile(codecs.encode(unicode(regex), "utf-8"), […]

re.compile не соответствует моей строке

Вот мой код: def split(content): pattern = re.compile(r"""(\\\[-16pt]\n)(.*?)(\n\\\nthinhline)""", re.X | re.DOTALL) print(pattern.finditer(content)) for m in pattern.finditer(content): print ("in for loop") print("Matched:\n—-\n%s\n—-\n" % m.group(2)) print ("in split") def replacement(content): split(content) pattern = re.compile(r'(?<=\\\\\[-16pt]\n)([\s\S]*?)(?=\\\\\n\\thinhline)') content= ' '.join(re.findall(pattern, content)) print ("in replace") return content Вот результат: <callable-iterator object at 0x2ab2e09cfe10> in split in replace Я пробовал алгоритм с […]

выбор правильной структуры данных для анализа файла

У меня есть файл csv с содержимым в следующем формате: CSE110, Mon, 1:00 PM, Fri, 1:00 PM CSE114, Mon, 8:00 AM, Wed, 8:00 AM, Fri, 8:00 AM который является в основном названием курса, за которым следуют тайминги. какова лучшая структура данных для анализа и хранения этих данных? Я попытался использовать именованные кортежи следующим образом: CourseTimes […]

сопоставление нескольких строк в python

Периодическое генерируемое компьютером сообщение (упрощенное): Hello user123, – (604)7080900 – 152 – minutes Regards Используя python, как я могу извлечь «(604) 7080900», «152», «минуты» (т. Е. Любой текст, следующий за основным "- " шаблоном) между двумя пустыми строками (пустая строка – это \n\n после "Hello user123 "и \n\n до" С уважением "). Еще лучше, если […]

 
Interesting Posts for Van-Lav

Реализация многопроцессорности pyqtgraph в виджет pyqt

Создайте Spark DataFrame. Невозможно вывести схему для типа: <type 'float'>

Python 3: ImportError «Нет модуля с именем Setuptools»

Стриптиз HTML из строк в Python

IndexError на огромный список в Python

Обработка нестандартных американских английских символов и символов в CSV с использованием Python

Использование len в текстах, но разделение пробелов в графе

Установленный Virtualenv и активация virtualenv не работают

Как превратить логический массив в индексный массив в numpy

Возможно ли в OpenCV построить локальную кривизну в виде тепловой карты, представляющей «интересность» объекта?

Размер GUI Tkinter на экранах с высоким разрешением

Могу ли я изменить размер пула соединений для модуля запросов «Python»?

Как я могу увеличить свойства счетчика класса при вызове экземпляра?

Оптимизирует ли Python хвостовую рекурсию?

Баум-Уэлч много возможных наблюдений

Python - лучший язык программирования в мире.