import re
regex = re.compile(r"<table.*?>(([\s*].*(\s*))+)?<\/table>")
test_str = ("<table width=\"100%\" cellspacing=\"0\" cellpadding=\"4\"><colgroup> <col width=\"85*\" /> <col width=\"85*\" /> <col width=\"85*\" /> </colgroup>\n"
"<thead>\n"
"<tr valign=\"TOP\">\n"
"<th width=\"33%\">Th1</th>\n"
"<th width=\"33%\">Th2</th>\n"
"<th width=\"33%\">Th3</th>\n"
"</tr>\n"
"</thead>\n"
"<tbody>\n"
"<tr valign=\"TOP\">\n"
"<td width=\"33%\">C1</td>\n"
"<td width=\"33%\">C2</td>\n"
"<td width=\"33%\">C3</td>\n"
"</tr>\n"
"<tr valign=\"TOP\">\n"
"<td width=\"33%\">C4</td>\n"
"<td width=\"33%\">C5</td>\n"
"<td width=\"33%\">C6</td>\n"
"</tr>\n"
"<tr valign=\"TOP\">\n"
"<td width=\"33%\">C7</td>\n"
"<td width=\"33%\">C8</td>\n"
"<td width=\"33%\">C9</td>\n"
"</tr>\n"
"</tbody>\n"
"</table>\n\n"
"<h2>Title</h2>\n"
"<table width=\"100%\" cellspacing=\"0\" cellpadding=\"4\"><colgroup> <col width=\"85*\" /> <col width=\"85*\" /> <col width=\"85*\" /> </colgroup>\n"
"<thead>\n"
"<tr valign=\"TOP\">\n"
"<th width=\"33%\">Th1</th>\n"
"<th width=\"33%\">Th2</th>\n"
"<th width=\"33%\">Th3</th>\n"
"</tr>\n"
"</thead>\n"
"<tbody>\n"
"<tr valign=\"TOP\">\n"
"<td width=\"33%\">C1</td>\n"
"<td width=\"33%\">C2</td>\n"
"<td width=\"33%\">C3</td>\n"
"</tr>\n"
"<tr valign=\"TOP\">\n"
"<td width=\"33%\">C4</td>\n"
"<td width=\"33%\">C5</td>\n"
"<td width=\"33%\">C6</td>\n"
"</tr>\n"
"<tr valign=\"TOP\">\n"
"<td width=\"33%\">C7</td>\n"
"<td width=\"33%\">C8</td>\n"
"<td width=\"33%\">C9</td>\n"
"</tr>\n"
"</tbody>\n"
"</table>")
match = regex.search(test_str)
if match:
print(f"Match 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