Moin!
Wie sähe aber ein solcher Ausdruck aus?
replace( /<div\s+align="([^>"]+)">([^<]*)</div>/, "[$1]$2[/$1]" )
(ungetestet!) Allerdings fehlt hier noch das "uppercasing". Das müßtest Du in einem weiteren Schritt erledigen.
Gibt es eine Bessere möglichkeit?
Ja! Wenn Du auf der DOM Struktur arbeiten würdest.
-- Skeeve