<table> matches the characters <table> literally (case sensitive)
.*?
matches any character (except for line terminators)Line terminator(s) are \n
*? Quantifier — Matches between zero and unlimited times, as few times as possible, expanding as needed (lazy)
1st Capturing Group (<tr>.*?(<td>(.*?)</td>).*?</tr>)
<tr> matches the characters <tr> literally (case sensitive)
.*?
matches any character (except for line terminators)Line terminator(s) are \n
*? Quantifier — Matches between zero and unlimited times, as few times as possible, expanding as needed (lazy)
2nd Capturing Group (<td>(.*?)</td>)
<td> matches the characters <td> literally (case sensitive)
3rd Capturing Group (.*?)
</td> matches the characters </td> literally (case sensitive)
.*?
matches any character (except for line terminators)Line terminator(s) are \n
*? Quantifier — Matches between zero and unlimited times, as few times as possible, expanding as needed (lazy)
</tr> matches the characters </tr> literally (case sensitive)
.*?
matches any character (except for line terminators)Line terminator(s) are \n
*? Quantifier — Matches between zero and unlimited times, as few times as possible, expanding as needed (lazy)
</table> matches the characters </table> literally (case sensitive)
g modifier: global. All matches (don't return after first match)