var exprPng = / *([^ ]+\.png) */g;
var exprPngP = /([^ ]+\.png">)(.*?)(?=<img src=|$)/g;
([^ ]+\.png) *(.*?) *(?=[^ ]+\.png|$)
— работает хорошо при любом завершении и даже без комментариев. Минус только в том, что результат с ним всегда будет заканчиваться наполненным или пустым тегом «<p>
» — терпимо.