You ask where the problem is and I'll try to give you some pointers.
For starters, the idea of [^>]*.*
makes no sense. It's saying something like "match X specifically or nothing, or match anything or nothing." In that case, it would be easy to just match anything.
This is simpler.
Search: (<img.*?)(dl=.*?)(alt=[^>]*>)
Replace: <dl class="imgLeft"><dt>\1\3</dt><dd>\2</dd></dl>