$re = '/([^\s=]+)=(\'?)("?)([^>"\']*)\2\3/';
$str = ' style="width: 462px;" src=\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAg4AAALoCAYAAAAQpn2mAAAABHNCSVQICAgIfAhkiAAAABl0RVh0U29mdHdhcmUAZ25vbWUtc2NyZWVuc2hvdO8Dv4AACAASURBVHic7L15fNTVufj/PjOTyWSyTfaEJBD2EJBNQFQEtFVRXMD7VQG1dfu2tLW92t77unaxam+t9nbTXze9tW61Vdqvgre9FXcqUHFBFiUEkX0PgSQkmf1zzu+Pzz6ZhBBwg3l4kZn5fM7yPM8553me85znnAMZyEAGMpCBDGQgAxnIQAYykIEMZCADGchABjKQgQxkIAMZyEAGMpCBDGQgAxnIQAYykIEMZCADGchABjKQgQxkIAMZyEAGMpCBDGQgAxnIQAYykIEMZCADGchABjKQgQxkIAMZyEAGMpCBDGQgAxnIQAYykIEMZCADGchABjKQgQxkIAMZyEAGMpCBDGQgAxnIQAqIiy66SDXM/SW7DyUQgEIBAiFAKTOZQn8p7N/OQhB6PgFCgUI43ull6mmwyhUolFWJMB=\' data-filename="Screenshot from 2016-02-09 21:54:47.png"
<tr><td><A HREF="brackets.html" TARGET="_top">Capturing group</A></td>
<td><TT>(regex)</TT></td>
<td>Parentheses group the regex between them. They capture the text matched by the regex inside them into a numbered group that can be reused with a numbered backreference. They allow you to apply regex operators to the entire grouped regex.</td>
<td><TT CLASS=code><SPAN CLASS="regexnest1">(</SPAN><SPAN CLASS="regexplain">abc</SPAN><SPAN CLASS="regexnest1">)</SPAN><SPAN CLASS="regexspecial">{3}</SPAN></TT> matches <TT CLASS=match>abcabcabc</TT>. First group matches <TT CLASS=match>abc</TT>.</td>
<td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>ECMA<br>extended<br>egrep<br>awk</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td><td class=yes>YES</td></tr>
<tr><td><A HREF="brackets.html" TARGET="_top">Capturing group</A></td>
<td><TT>\\(regex\\)</TT></td>
<td>Escaped parentheses group the regex between them. They capture the text matched by the regex inside them into a numbered group that can be reused with a numbered backreference. They allow you to apply regex operators to the entire grouped regex.</td>
<td><TT CLASS=code><SPAN CLASS="regexnest1">\\(</SPAN><SPAN CLASS="regexplain">abc</SPAN><SPAN CLASS="regexnest1">\\)</SPAN><SPAN CLASS="regexplain">{3}</SPAN></TT> matches <TT CLASS=match>abcabcabc</TT>. First group matches <TT CLASS=match>abc</TT>.</td>
<td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td>no</td><td class=yes>basic<br>grep</td><td>no</td><td class=yes>YES</td><td>no</td><td class=yes>YES</td><td>no</td><td>no</td><td>no</td><td>no</td></tr>
<tr><td><A HREF="brackets.html" TARGET="_top">Non-capturing group</A></td>
';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
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 PHP, please visit: http://php.net/manual/en/ref.pcre.php