import re
regex = re.compile(r"""
{%\ (if)[\s\S]*?{%\ end\1\ %}|
{%.+?%}|
{{.+?}}
""", flags=re.VERBOSE)
test_str = ("<div class=\"post-preview\">\n"
" <div class=\"post-title\">\n"
" <div class=\"post-name\">\n"
" <a href=\"{{ post.url }}\">{{ post.title }}</a>\n"
" </div>\n"
" <div class=\"post-date\">\n"
" {% include time.html %}\n"
" </div>\n"
" </div>\n\n"
" <div class=\"post-snippet\">\n"
" {% if post.content contains '<!--break-->' %}\n"
" {{ post.content | split:'<!--break-->' | first }}\n"
" <div class=\"post-readmore\">\n"
" <a href=\"{{ post.url }}\">read more-></a>\n"
" </div>\n"
" {% endif %}\n"
" </div>\n"
" {% include post-meta.html %}\n"
"</div>")
subst = ""
result = regex.sub(subst, test_str)
if result:
print(result)
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