Group 1(<\/td>[^<]*<td[^>]*>) <the literal < (6010 / 748 / 3C16)
\/the literal / (4710 / 578 / 2F16)
td>the literal text td> (case sensitive) Negated Character Class[^<]* *matches any number of characters outside the set below:
<the literal < (6010 / 748 / 3C16)
<tdthe literal text <td (case sensitive) Negated Character Class[^>]* *matches any number of characters outside the set below:
>the literal > (6210 / 768 / 3E16)
>the literal > (6210 / 768 / 3E16)
\s*any whitespace character, repeated any number of times
\S+any non-whitespace character, repeated at least once
\sany whitespace character
\S+any non-whitespace character, repeated at least once
,the literal , (4410 / 548 / 2C16)
\s*any whitespace character, repeated any number of times
Group 2([^<]* <\/td> [^<]* <\/tr>) Negated Character Class[^<]* *matches any number of characters outside the set below:
<the literal < (6010 / 748 / 3C16)
\/the literal / (4710 / 578 / 2F16)
td> the literal text td> (case sensitive) Negated Character Class[^<]* *matches any number of characters outside the set below:
<the literal < (6010 / 748 / 3C16)
\/the literal / (4710 / 578 / 2F16)
tr>the literal text tr> (case sensitive) g modifier: global. Finds all matches instead of stopping after the first
m modifier: multiline. Causes ^ and $ to match the start and end of each line, not only the start and end of the string