Teoria

Páginas: 13 (3012 palabras) Publicado: 5 de abril de 2011
Expresiones regulares en Java (I) – Pattern y Matcher
Java pone a disposición del programador paquetes que facilitan el manejo de expresiones regulares.Algunas de estas ayudas podrian ser Pattern, Matcher, StringTokenizer …
Programando con estas librerías, he visto que StringTokenizer era una ayuda cuando se trataba de utilizar expresiones regulares sencillas, pero la combinacion de Pattern yMatcher dan lugar a aplicaciones muy potentes (con respecto al reconocimiento del lenguaje).
En primer lugar, para hacer uso de estas librerías hace falta importarlas:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
La clase Pattern define el patron, el cual despues mediante Matcher crearemos el objeto encargado de indicar si un elemento pertenece a nuestro lenguaje o no.
Estasdos clases son muy potentes.Una breve explicación de estas clases las podemos encontrar en este blog en:
* Pattern
* Matcher
La clase Pattern
En una expresión regular existe un patrón, el cual es el encargado de definir mediante una determinada notación un lenguaje. La clase Pattern define ese patrón.
De la clase Pattern podemos resaltar:
* static Pattern compile (String expreg)* Crea un patrón a partir de la expresión regular dada por expreg.
* static Pattern compile(String regex, int flags)
* Crea un patrón a partir de la expresión expreg teniendo en cuenta los flags. Los flags son opciones que se incluyen para tener un trato especial cuando se este trabajando con la expresión regular.
* Ejemplo: si quiero que no me distinga entre mayúsculas yminúsculas, tendré que añadir el flag Pattern.CASE_INSENSITIVE.
* int flags ()
* Devuelve los flags asociados a la expresión regular o patrón.
* Matcher matcher(CharSequence input)
* Realizará el tratamiento del patrón sobre el texto que se le pase como entr ada.
* static boolean matches(String regex, CharSequenceinput)
* La utilidad de este método es que permite la no utilización de un matcher para indicar si una expresión regular puede albergar una cadena o parte de esta.
* String pattern()
* Devuelve la expresión regular asociada al objeto Pattern sobre el que estemos trabajando.
* String [] split (CharSequence input)
* Tiene el mismo significado que en Perl;es decir, dadoun patrón, te crea un array de String con las diferentes cadenas en las que se ha dividido.
La clase Matcher
Una vez definido el patrón con Pattern, tenemos que crearnos un objeto que al recibir una cadena de caracteres analice si dicha cadena o las subcadenas que la componen pertenecen al lenguaje dado.
De la clase Matcher podemos resaltar:
* Matcher appendReplacement(StringBuffer sb, String replacement)
* appendTail (StringBuffer sb)
* int end(int group)
* Devuelve el índice del último carácter más 1 de la cadena que concuerda con la expresión regular.
* boolean find()
* Busca en la cadena de texto a analizar a partir del último matching, la secuencia de caracteres que puede concordar con la expresión regular.
* boolean find(intstart)
* Lo mismo que find() , pero empieza a buscar a partir de un índice que le es dado como parámetro.
* String group()
* Devuelve la cadena que ha sido aceptada por la expresión regular.
* String group (int group)
* Es el equivalente en perl a $n. Es decir, si tenemos una expresión regular tal que : “((a)(b)(c))”, group(2) sería a.
* int groupCount()
*Indica el número de grupos que hay en un patrón.
* Pattern pattern()
* Devuelve el Pattern sobre el que estamos trabajando.
* String replaceAll(Strip cad)
* Devuelve una cadena que es la alteración de la cadena original a evaluar de forma que se han sustituido todas subsecuencias de caracteres que coincidían con la expresión regular por la cadena “cad” pasada por...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Teoria
  • Las Teorias
  • Teorias
  • Teoria
  • Teoria
  • Teoria
  • Teoria
  • Teoria

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS