$re = '/<img(.*?)src=(?:\'|")((?:.*?)\.(?:gif))(?:\'|")(.*?)\/?>/im';
$str = '<img id="image-767050065729cd0d0ee13" class="marker-true-tag " data-gif="./static/images/5729cb54611d945c5d72684c.png" alt="" /><img id="image-9990266295729cd0cdca60" class="marker-true-tag " src="./static/images/5721edcd611d941b17569aa2.png" alt="" /><img id="image-3574931435729cd0ca6721" class="marker-true-tag " src="./static/images/56322568611d94ae6756a8a1.png" alt="" /><img id="image-13612540315729cd0cc267c" data-gif="./static/images/5729d37c611d94c56072684c.gif" class="marker-true-tag " src="" alt="" />';
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