Как оптимизировать поиск в использовании режима по нескольким шаблонам в Python?Python

Программы на Python
Anonymous
 Как оптимизировать поиск в использовании режима по нескольким шаблонам в Python?

Сообщение Anonymous »

У меня есть скрипт Python, который использует несколько регулярных выражений для поиска через содержимое файла. Вот соответствующий фрагмент кода: < /p>
PATTERNS = {
"email": re.compile(r"\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}\b"),
"phone": re.compile(r"\b\d{3}-\d{3}-\d{4}\b"),
"date": re.compile(r"\b\d{4}-\d{2}-\d{2}\b")
}

for key, pattern in PATTERNS.items():
matches = pattern.findall(filecontent)
Here, PATTERNS is a dictionary where the key is the pattern's name, and the value is a precompiled regex object (created using re.compile).
< /code>
шаблоны < /strong> - это словарь, где ключ - это имя шаблона, а значение представляет собой предварительно скомпилированный объект Regex (созданный с использованием re.compile).

filecontent < /strong> содержит содержимое файла в виде одной строки.
Скрипт работает правильно, но занимает несколько минут для обработки каждого файла из -за большого размера файлов и количества шаблонов . < /p>
Есть ли способ ускорить это, либо перестройте код, либо используя более эффективную библиотеку или подход? Например, улучшит ли бы объединение шаблонов, параллельной обработки или других методов?>

Подробнее здесь: https://stackoverflow.com/questions/793 ... -in-python

Вернуться в «Python»