Забыли упомянуть про `namedtuples` для более структурированных данных. Хотя может и перегружаю)):
Программный код:
import re
from collections import namedtuple
TextEntry = namedtuple('TextEntry', ['id', 'text'])
def search_pattern(pattern, entries):
regex = re.compile(pattern)
return [entry for entry in entries if regex.search(entry.text)]
if __name__ == "__main__":
texts = [TextEntry(1, "hello world"), TextEntry(2, "hi there"), TextEntry(3, "hey buddy"), TextEntry(4, "greetings")]
pattern = r'he'
matched_texts = search_pattern(pattern, texts)
for entry in matched_texts:
print(f"ID: {entry.id}, Text: {entry.text}")
Например, этот код ищет строки, где встречается 'he'.