Tag: регулярное выражение

Регулярное выражение для FileTypes

Я использую приложение, которое имеет следующую строку: ACCEPT_FILE_TYPES = re.compile('image/(gif|p?jpeg|(x-)?png)') Очевидно, что он ограничивает загрузку изображений с указанными расширениями. Но я планирую использовать его для загрузки этих форматов (возможно, даже более того) Файлы Microsoft Office (.doc, .docx, .xls, .xlsx и т. Д.) Adobe Reader (.pdf) И, вероятно, архивы (.rar, .zip, .7z) Я предполагаю, что его […]

Регулярное выражение для анализа SDDL

Я использую python для анализа SDDL с использованием регулярного выражения. SDDL всегда имеет форму «тип: некоторый текст», повторяемый до 4 раз. Типы могут быть либо «O», «G», «D», либо «S», за которыми следует двоеточие. «Некоторый текст» будет переменным по длине. Вот пример SDDL: O:DAG:S-1-5-21-2021943911-1813009066-4215039422-1735D:(D;;0xf0007;;;AN)(D;;0xf0007;;;BG)S:NO_ACCESS_CONTROL Вот что я до сих пор. Два из кортежей возвращаются просто […]

Поиск в python

У меня проблема с поиском в Python: >>> spacereplace = re.compile(b'(?<!\band)(?<!\bor)\s(?!or\b)(?!and\b)', re.I) >>> q = "ab (c or d)" >>> q = spacereplace.sub(" and ", q) >>> q # What is meant to happen: 'a and b and (c or d)' # What instead happens 'a and b and (c and or and d)' Регулярное […]

Найти символы, которые не соответствуют заданному регулярному выражению

Я пишу программу для проверки и исправления заданной даты в виде строки. Давайте возьмем 04121987 в качестве даты в формате ddmmyyyy . Регулярное выражение для такой даты: (0[1-9]|[12][0-9]|3[01])(0[1-9]|1[012])(19\d\d|20\d\d) Если я сопоставляю свою строку с регулярным выражением, она работает хорошо. В Python: >>> regex = re.compile(r'(0[1-9]|[12][0-9]|3[01])(0[1-9]|1[012])(19\d\d|20\d\d)') >>> regex.findall('04121987') [('04', '12', '1987')] Если у меня есть строка […]

Регулярное выражение для нахождения круглых скобок в Python

Я пытаюсь найти все совпадения для заглавной буквы, за которой следуют скобки, т.е. A), B), C) и т. Д. Я проверил ее с повторной попыткой (http://re-try.appspot.com/), и это отлично работает, но когда я реализую его в своей программе, он дает мне сообщение об ошибке: sre_constants.error: несбалансированные скобки parens = re.findall(r'[AZ]\)', test_file) Похоже, что он игнорирует […]

Самое быстрое регулярное выражение, которое не соответствует ни одной строке

Что является самым быстрым регулярным выражением, которое не соответствует какой-либо строке? Это может показаться бесполезной, но рассмотрим программу, которая принимает обязательное регулярное выражение как фильтр (например, это мой сценарий). Я попробовал несколько и нашел b(?<!b) лучшим исполнителем, учитывая, что b встречается редко во входном файле. Вот код python, который я написал, чтобы проверить разные шаблоны […]

RE для обработки обоих форматов

У меня есть два типа файлов. Один содержит строку, как показано ниже: "55.28 LongUrl0.20s: Preplan Async" Другой содержит линию как удар: >55.28 LongUrl0.20s: Preplan Async</a></span><br></td> В обоих случаях я хотел бы получить контент, начинающийся с LongUrl и заканчивая </a> или концом строки. >>> b="55.28 LongUrl0.20s: Preplan Async" >>> a=">55.28 LongUrl0.20s: Preplan Async</a></span><br></td>" >>> re.findall(r'LongUrl\d*.\d*s:[^<]+',a) ['LongUrl0.20s: […]

Python – PCRE_NOTEMPTY

Это очень простой вопрос, но я застрял, поэтому любая помощь будет оценена. import re re.split(r'(\d|\W|\_)', ' ab2c d_ef') ['', ' ', '', ' ', 'ab', '2', 'c', ' ', 'd', '_', 'ef'] Как мне избавиться от пустого совпадения? Мне нужен космический персонаж. Я хочу, чтобы мой вывод выглядел следующим образом: [' ', ' ', 'ab', […]

Изменить порядок элементов, найденных re.findall

Если у меня есть регулярное выражение, например, например: >>> text = 'asd321zxcnmzasd5' >>> re.findall('(asd)(\d*)', text) [('asd', '321'), ('asd', '5')] Как я могу заставить его изменять порядок элементов в кортежах? Например, например: [('321', 'asd'), ('5', 'asd')] Кортежи могут иметь более двух элементов, поэтому я не хочу просто изменять порядок или перерисовывать текст перед применением регулярного выражения […]

Как создать RegExp для соответствия 3 уникальным символам и 2 необязательным символам в конце?

Эй, кто-нибудь сможет помочь мне создать регулярное выражение для Python, которое имеет минимум 3 символа и максимум 5 символов? первые 3 символа должны быть уникальными, а два последних необязательных символа могут быть любыми символами. Еще раз, последние два символа могут быть чем угодно! (даже такой же, как один из первых трех символов) Это то, что […]

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