Код:

<?php
$test = <<<TEST
some text <imG src=image.gif> another text
text continues <iMg src= "image.png" Alt=text>
txt < img src ='image.jpg' alt ="text sfds" sOme="other tags">
text again <img src=iMAGE.tiff alt=""> that's all, folks!
TEST;
// регэксп длинный, я его немножко разбил
$src_part = 'src\s*=\s*("[^"]*"|\'[^\']*\'|[^\s]+)';
$alt_part = '(\s+alt\s*=\s*("[^"]*"|\'[^\']*\'|[^\s]+))?';
preg_match_all('/<\s*img\s+'.$src_part.$alt_part.'(.*?)>/i', $test, $result);
echo '<pre>';
print_r($result);
echo '</pre>';
?>
Результат:
Код:

Array
(
[0] => Array
(
[0] => <imG src=image.gif>
[1] => <iMg src= "image.png" Alt=text>
[2] => < img src ='image.jpg' alt ="text sfds" sOme="other tags">
[3] => <img src=iMAGE.tiff alt="">
)
[1] => Array
(
[0] => image.gif
[1] => "image.png"
[2] => 'image.jpg'
[3] => iMAGE.tiff
)
[2] => Array
(
[0] =>
[1] => Alt=text
[2] => alt ="text sfds"
[3] => alt=""
)
[3] => Array
(
[0] =>
[1] => text
[2] => "text sfds"
[3] => ""
)
[4] => Array
(
[0] =>
[1] =>
[2] => sOme="other tags"
[3] =>
)
)
Где здесь то, что тебе нужно и как убрать лишние кавычки, я думаю, понятно.
Важное замечание: после img обязательно должно быть src, а не какой-либо другой тэг. И alt, если он есть, дожен быть обязательно после src, иначе он не выцепится. Я когда-то давно делал на php парсер html (свой двигатель шаблонов делал), у него этих проблем не было бы, но он давно утерян
