Gracias a los dos! Me ha servido de ayuda, y funciona con expresiones, e incluso me asegurado de que no afecte a correos eléctronicos. Cómo imagino que cualquier otra persona que busque en Google o el foro la misma solución, llegará aqui, dejo el código para el que le interese:
Código Javascript
:
Ver original$('.comment p').each(function(){
var str = $(this).text();
$(this).empty();
str = ' '+str;
str = str.replace(/([^\w])\@([\w\-]+)/gm,'$1<a href="http://misitio.com/usuarios/$2" class="user">@$2</a>');
$(this).append(str);
});
Primero selecciono el texto que hay dentro de ".comment p", lo elimino con la funcion empty(), busco en él las palabras que empiezan por @, y las cambio por la misma palabra, con enlace. Finalmente, con append() vuelvo a insertar el texto con el cambio hecho.
Para hastags podria usarse el mismo código, cambiando la arroba por #, también en la url puedes insertar enlaces de Twitter, para @menciones seria así: "http://twitter.com/$2" y para #hastags así "http://twitter.com/search?q=%23$2".
Ojo con la línea que dice "
$(this).text();", aquí yo selecciono el texto dentro de ".comment p" para luego borrarlo, cualquier etiqueta dentro será borrada y al no ser texto plano, no se vuelve a insertar en el append(), para esto mejor usar "
$(this).html();".
Gracias por vuestra ayuda, señores :D