Expresión regular para filtrar "@" y algunas URL

Ayer que estaba analizando una serie de textos en japonés, estuve intentando hacer una expresión regular que me ayudara a filtrar URL y algunas palabras que comenzaban con arroba y podían terminar con 2 puntos.

Aunque necesitaba implementarlo en Java, primero hice pruebas en Python para evitarme la pena de tener que hacer una clase pequeña.

Por supuesto, la parte de la URL es muy común, así que en vez que reinventar el hilo negro, mejor busqué en internet. Al final, terminé con ésta:

String a = "El texto con arrobas y URL";

System.out.println(a.replaceAll("(^|\\b)?@\\w+:?(\\b)?|(http|ftp|https):\\/\\/[\\w\\-_]+(\\.[\\w\\-_]+)+([\\w\\-\\.,@?^=%&:/~\\+#]*[\\w\\-\\@?^=%&/~\\+#])?","");

Sé que hay más opciones para filtrar la URL, pero ésta cumplió el trabajo.

Por cierto, @mecart comentó que parecía un nuevo smiley 😛

0 thoughts on “Expresión regular para filtrar "@" y algunas URL”

  1. Tienes que ‘escapar’ la \ por el hecho de estar entre comillas?

    Bueno la verdad te preguntaría por cada cosa pero me ganaría un lmgtfy… Casi no he trabajado con expresiones regulares (sólo para hacer macros en UltraEdit, un editor de texto) pero se me hacen interesantes…

    “(^/\°)b <= un monito guiñando un ojo y thumbs-up

    111 @..\w <= un monito jugando boliche

    '^' <= inicio de línea

Leave a Reply

Your email address will not be published. Required fields are marked *