iberck
7/5/2017 - 3:27 PM

Regex java

Regex java

// Hacer un match exacto en groovy
'#AFFFFF' ==~ /(\s*)|(#[0-9a-fA-F]{6})/

Matches vs Find (Java)

matches() retorna true si la cadena ENTERA hace match contra la expresión regular indicada, implicitamente agrega un ^ al inicio y un $ al final de la expresión regular

Pattern.matches(regex, text) o text.matches(regex): Busca si el texto hace match exacto contra la regexp.

find() intenta encontrar substrings que hagan match contra la expresión regular.

Pattern.compile(regex).matcher(text).find(): Busca si la cadena contiene la regex.

Ejemplo:

[a-z]+ con la cadena 123abc123 fallará utilizando el método matches() pero hará match utilizando el método find().