Expresiones regulares en ROR

Muy buenas, abro este post para solucionar un problema que se nos
presenta con los usuarios que utilizan el IE6.
El caso es que cuando los usuarios deciden incluir en sus mensajes una
url muy larga la maquetación de la pagina se destroza por completo (se
ensancha una barbaridad). Al principio pensamos en resolver el problema
tirando de CSS, mas precisamente con la propiedad word-wrap

msgforo .p {
overflow: hidden;
word-wrap: break-word;
}

Por si a alguien le interesa dejo uno de los muchos links que hay sobre
esta propiedad:

La cosa no habría ido a mas sino hubiera sido porque uno de los usuarios
nos posteo que algunas palabras se repetian. El problema lo introduce el
word-wrap y es algo como esto:

Debería leerse para una resolución de pantalla:

Uy Uy Uy no digas eso no sea que alguna
vez llores

Se lee

Uy Uy Uy no digas eso no sea que alguna
alguna vez llores

Visto que con el word-wrap no hemos podido darle solución nos hemos
decantado por tirar de expresiones regulares (uno de los muchos mundos
nuevos que descubro cada dia). Pues bien tirando de google he
descubierto esta fantástica pagina: http://www.rubular.com/ en la que
podemos testear nuestras expresiones regulares. Yo parto de esta
expresión regular:
(\b(https?|ftp|file)\S+|\b(www?|ftp|file)\S+) que lo que hace es dado un
texto seleccionar todas las direcciónes (selecciona desde que encuentra
www o https hasta el final). La idea es dotar a los moderadores de una
herramienta que les permita editar el texto (mas que editar seria
cambiar las urls largas que pueden dar problemas en maquetación por
link_to) pero tengo un problema…la expresión regular tal y como esta
construida encuentra todas las urls y nosotros no queremos que cambia
las direcciones que esatn entre <a href=“…” y <img src=“…”. Sin
embargo por ahora no veo la forma de implementarlo. Si alguien tiene mas
experiencia con las expresiones regulares y cree que puede tirar un
cable le estaría muy agradecido.

Un saludo a todos y gracias de antemano!!!