import re
regex = re.compile(r"(?<!\?)>([А-яҐґІіЇїЄє .\-!?]+)<(?!\?)", flags=re.MULTILINE | re.IGNORECASE)
test_str = ("<div class=\"faq__wrapper\">\n"
" <div class=\"faq__subject faq__subject--active\">\n"
" <div class=\"faq__header\">\n"
" <h1 class=\"heading-light faq__title\">Часті питання</h1>\n"
" </div>\n"
" <div class=\"nav nav_faq faq__nav\">\n"
" <button class=\"btn-nav nav__link btn-nav--active\">\n"
" <i class=\"icon-info icon-info_heart\">\n"
" <svg>\n"
" <use xlink:href=\"#svg-icon-icon_heart_default\"></use>\n"
" </svg>\n"
" </i>\n"
" <span>щодо проекту</span>\n"
" </button>\n"
" <button class=\"btn-nav nav__link\">\n"
" <i class=\"icon-info icon-info_person\">\n"
" <svg>\n"
" <use xlink:href=\"#svg-icon-icon_person\"></use>\n"
" </svg>\n"
" </i>\n"
" <span>щодо волонтерства</span>\n"
"<?=__('Театр')?>\n"
" </button>\n"
" </div>\n"
" </div>\n"
"<div class=\"heading-linked\">\n"
" <?=__('Зараз у репертуарі ')?><?=$this->plural($performancesCount,\n"
" [__('театру'), __('театру'), __('театру')])?> <br/>\n"
" <?=$performancesCount?> <?=$this->plural($performancesCount,\n"
" [__('вистава'), __('вистави'), __('вистав')])?>\n"
" </div>")
matches = regex.finditer(test_str)
for match_num, match in enumerate(matches, start=1):
print(f"Match {match_num} was found at {match.start()}-{match.end()}: {match.group()}")
for group_num, group in enumerate(match.groups(), start=1):
print(f"Group {group_num} found at {match.start(group_num)}-{match.end(group_num)}: {group}")
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Python, please visit: https://docs.python.org/3/library/re.html