(\d{2}\W?){3}
Introducción a las Expresiones Regulares
Todo lo que aprenderás sobre expresiones regulares
¿Qué son las expresiones regulares?
Aplicaciones de las expresiones regulares
Introducción al lenguaje de expresiones regulares
El lenguaje: caracteres, operadores, y construcciones
El caracter (.)
Las clases predefinidas y construidas
Los delimitadores: +, *, ?
Los contadores {1,4}
El caso de (?) como delimitador
Not (^), su uso y sus peligros
Reto: Filtrando letras en números telefónicos utilizando negaciones
Principio (^) y final de linea ($)
Uso práctico de Expresiones Regulares
Logs
Teléfonos
URLs
Mails
Localizaciones
Nombres(?) Reto
Usos avanzados en Expresiones Regulares
Búsqueda y reemplazo
Expresiones Regulares en lenguajes de programación
Uso de REGEX para descomponer querys GET
Explicación del Proyecto
Perl
PHP
Utilizando PHP en la práctica
Python
Java
Java aplicado
JavaScript
`grep` y `find` desde consola
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Alberto Alcocer (Beco)
En el texto siguiente:
555658
56-58-11
56.58.11
56.78-98
65 09 87
76y87r98
Definir un patrón que haga match a todas las líneas excepto a la la última, la que tiene letras.
Es decir, seleccionar todas sin importar el caracter de separación, excepto cuando los números están separados entre sí por letras.
Aportes 596
Preguntas 12
(\d{2}\W?){3}
Jugando con la negación encontré que se puede hacer una doble negación que da evidentemente positivo, lo que significa que
[^\D]
Es lo mismo que…
\d
Mi solución me salió así:
\d{2,}[^a-z]+
Selcciona cada linea cuando se separen por un signo y no por una letra
\d+[^aA-zZ\n]{2,6}
\d+
Todos los digitos.
[^aA-zZ\n]
Siguiente caracter No puede ser letra ni salto de linea
{2,6}
Selecicon aplica en secciones de de minimo 2 digitos maximo 6
Esta es mi respuesta
(\d{2,2}[^a-zA-Z\n]?){3,3}
Me funciona porque tambien me ignora el enter entre lineas.
Mi solución:
.+[^y,r]\d\d
Me gusta verlo así para utilizar los contadores y la negación que vimos previamente.
([\d]{2,2}[^\w]?){3,3}
Mi solución:
(.*[\W])
Otra posible solución al reto
(\d{2}[^a-z]?){3}
https://regex101.com/r/9iVJA5/6/ esta pagina esta buena 😄
Expresión Regular: (\d\d[^a-z\n]?){3,3}
Me parece que lo de los paréntesis no lo había comentado Beto en lo que vamos del curso, pero mi intención era agrupar así que lo probé con llaves, con corchetes y por último por paréntesis y estos últimos fueron los que funcionaron.
Mi solución:
.+\d[^.\w]
Listo
[0-9]*[^\w][\.\s\-]?
La respuesta al reto es: \d\d\W?\d\d\W?\d\d[\n]
Mi solución (\d{2,2}[^a-zA-Z]?){3,3}
La respuesta al reto es: (\d\d[^a-zA-Z]?){2}\d\d
mi solución , usando la \W para negar y diciendo que puede o no tener para que pueda hacer match con la primera linea
(\d{2,2}\W?){3,3}
(\d{2}\W?)\d.* sin importar el múltiplo del ultimo dígito 😃
\d{2}\W?\d{2}\W?\d{2}\n
Solución al reto
[0-9\ \.\-][^a-z]
\d\d+[\W]
Mi expresion regular quedó asi
(\d{2}\W?){3,3}
(\d{2,2}\W?){3}
\d{2}([\.\-\s]?\d{2}){2}
Yo hice este para detectar numeros de donde vivo
)
^(\d{2,4}\W?){4,5}$
\d{2}[\W]?\d{2}[\W]?\d{2}
\d*\W
Aunque incialmente lo tenia asi
.*\W
Pero mejor para que tome los numeros use el \d
mi solucion:
\d{2,2}[^a-z^A-Z]?\d{2,2}[^a-z^A-Z]?\d{2,2}$
234567 match
89-44-72 match
32.61.71 match
59i27u93
45U89U66 match
56 84 49 match
\d{2,}[^a-zA-Z]+
Creo que está bien…creoooo \d{2,2}[ .-]?[^a-z]*\n
Mi solución:
(\d{2}[^a-zA-Z]?){3}
\d{2}\W?\d{2}\W?\d{2}
\d[. -]
Dejo mi aporte.
([0-9]{2,2}[^A-Za-z]?){3,3}
const text = `
555658
56-58-11
56.58.11
563.78-8
6 09 587
76y87r98`; // Esto debe ser ignorado 🔥
const pattern = /\d[\d\W]{6,}\d\W/gm; //👈👀 Patrón
const numbers = text.match(pattern);
console.log(numbers);
console.log(numbers[0].replace('/\n/g', ' '));
[ '555658\n56-58-11\n56.58.11\n563.78-8\n6 09 587\n' ]
555658
56-58-11
56.58.11
563.78-8
6 09 587
\d{2}[^a-zA-Z]?\d{2}[^a-zA-Z]?\d{2}
\d+[\s.-]?\d+[\s.-]?\d+
^\d+[-.\s]?\d+[-.\s]?\d+$
Esta fue mi solución:
\d*[^a-zA-Z]*
Esta es la solución a la que llegué, sé que hay mejores soluciones y las estudiaré seguramente
(\d{2,2}[^a-z]?){5,5}
\d{2}[^a-z]\d{2}[^a-z]\d{2}
mi solu
(\d\d[^A-Za-z]?){4,4}
Esta es mi solución al reto:
\d{2,}[\W]?
Esta es una solución al reto:
"\d{2,2}[^a-z]?\d{2,2}[^a-z]?\d{2,2}"
^[\d\s.-]+$
Yo lo genere de esta manera , debido a que el ejercicio esta planteado para realizar uno o varios match y no indica que sea por una cantidad de digitos lo genere de esta manera , aunque muy probablemente existe una manera de realizar un match de todo el conjunto de los numeros
\d{2,}[\-\.\s]\w*?
\d{2}[^a-zA-Z]+
Mi solucion
(\d{2}[^a-zA-Z]?){3}
El patrón REGEX para seleccionar todas las líneas excepto la última que contiene letras sería:
^(\d+([\s.-])?)+$
Este patrón busca una o más secuencias de dígitos (\d+), seguidas opcionalmente de un separador que puede ser un espacio, un punto o un guión (- o .), todo esto encerrado en paréntesis. La secuencia completa se repite una o más veces ((…)+), y todo el patrón debe comenzar y terminar con una secuencia de dígitos, indicado por el ancla “^” y “$”. De esta manera, las líneas que contienen solo números con separadores válidos serán seleccionadas, mientras que la última línea que contiene letras no lo será.
Hello!
Creo que esta me da la respuesta al challenge:
[0-9]{2,2}[\W]?
Mi solución es la siguiente:
\d{2,}\W+
Esta seria la solucion al reto en Visual studio code:
\d.+\d{2}?.+
(\d\d)\W?(\d\d)\W?(\d\d)
El reto: (\d{2,2}[\.\- ]?){5}
y el anti reto 😄 (también incluyendo la de las letras): (\d{2,2}[.-a-z ]?){5}
\d{2,2}[^\w]?\d{2,2}[^\w]?\d{2,2}
Utilizando:
[A-z]
Sirve para referirse tanto a letras mayúsculas como a minúsculas.
Evitando así usar [a-zA-Z]
Esta es mi solución:
\d{2}[^A-z]+
Incluso excluyendo a las mayúsculas utilizando A-z, ya que me di cuenta que así también sirve para referirse tanto a mayúsculas como a minúsculas
Este es mi solución para este caso en específico
([^a-zA-Z \s]+\d{2,2}[-.\ ]?){3}
SPOILER 😄
(\d{2}[\W\n]){3}
El \W es equivalente a [^a-zA-Z0-9_], luego hay que añadir el \n para que coja el último par de dígitos.
\d\d[.\s-]?\d\d[.\s-]?\d\d Esta fue mi solución. Funcionó aunque no fue muy prolija. Después vi los comentarios y encontré soluciones mucho más elegantes de otros/as compañeros/as .
\d{2}\W?\d{2}\W?\d{2}
Esta es mi solución :
\d{2,}[.?|^\W]
^(\d{2,2}\W?){3,3}$
\d[-. ]?
Esta es mi soluciòn:
\d{2}[\.\W]{0,1}\d{2}[\.\W]{0,1}\d{2}[\.\W]{0,1}
Esta seria mi respuesta al reto:
\d{2}[\W]?\d{2}[\W]?\d{2}\n
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?