Sei Du auch gegrüßt ;-)
Zu 2.: Wenn das Muster, nachdem Du suchst, in dem ersetzten String wieder vorkommen soll, musst Du das in runde Klammern setzen. Im "Ersetzen"-String setzt Du dann an geeignete Stelle ein "\1" (die Dinger werden nummeriert), in Deinem Fall also "</td><td>\1".
Viel Erfolg!
preg_replace("[0-9]{1,3},[0-9]{0,2} Euro", "</td><td>", $string);
und zweites (wenns denn gehen sollte) ersetzt das script ja 44,12 Euro durch </td><td>. ich wollte aber nicht ersetzen sondern davor schreiben, also </td><td>44,12 Euro.