Algo que encontré:
http://w3.unpocodetodo.info/utiles/regex.php
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
No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.
Antes: $249
Paga en 4 cuotas sin intereses
Termina en:
Alberto Alcocer (Beco)
Estos dos caracteres indican en qué posición de la línea debe hacerse la búsqueda:
el ^ se utiliza para indicar el principio de línea
el $ se utiliza para indicar final de línea
^ ------------- $
Aportes 63
Preguntas 10
Algo que encontré:
http://w3.unpocodetodo.info/utiles/regex.php
Esta RegEx ^\w+,\w+,\w+$
se puede escribir así:
^(\w+,){2}(\w+)$
matcheando estrictamente lo mismo.
Un reto comunidad, hacer un match con las lineas 1 y 6:
3rgergwg0
354656546
aa
3
3
3$%^%$^$%78
Good luck 😃
Estos dos caracteres indican en qué posición de la línea debe hacerse la búsqueda:
el ^ se utiliza para indicar el principio de línea
el $ se utiliza para indicar final de línea
^ ------------- $
Resumen de: @Beco
Sólo puedo decir que éste curso me ha encantado
^ “inicio de línea” “argumentos” $ “final de línea” ES LA LÍNEA ENTERA O NO LO ES
^\d$ -> línea completa solo con un digito
^[^\d]$ -> línea completa sin un digito
Ejemplo:
csv1,csv2,csv3
1234,543,123
432,6432,13453
234,234,543,345
Para esos datos CSV, para hacer match sólo a las líneas con 3 columnas sería: ^\w+,\w+,\w+$
^
y final de linea $
El principio y el final de línea son conceptos importantes en las expresiones regulares (RegEx) y se representan mediante los metacaracteres ^
y $
, respectivamente. Estos metacaracteres se utilizan para anclar coincidencias al inicio o al final de una línea o cadena de texto.
^
- Principio de LíneaEl metacaracter ^
se usa para anclar una coincidencia al principio de una línea o cadena de texto. Indica que la coincidencia debe comenzar desde el inicio de la línea. Si estás trabajando con múltiples líneas, puedes usar la bandera “multiline” (por ejemplo, /^patrón/m
en JavaScript) para que ^
coincida con el principio de cada línea en lugar del principio de toda la cadena.
Ejemplo: La expresión regular ^Inicio
coincidirá solo con “Inicio de línea” si “Inicio” está al principio de una línea.
$
- Final de LíneaEl metacaracter $
se usa para anclar una coincidencia al final de una línea o cadena de texto. Indica que la coincidencia debe terminar al final de la línea. Al igual que con ^
, puedes usar la bandera “multiline” para que $
coincida con el final de cada línea.
Ejemplo: La expresión regular Fin$
coincidirá solo con “Fin de línea” si “Fin” está al final de una línea.
Estos metacaracteres son particularmente útiles cuando deseas buscar patrones o realizar validaciones en líneas individuales de texto, como cuando procesas un archivo de texto con múltiples líneas o cuando validas entradas de usuario que deben cumplir con un formato específico al principio o al final de una línea.
Absolutamente útil.
Resumen
^\d\d$
nos encuentra las líneas con 2 dígitos
^\d{3,6}$
nos encuentra líneas completas con 3,4,5 y 6 dígitos
^[^\d].*$
usando el ^ como inicio de línea y como negación
allí nos encuentra líneas con solo letras
10. Mis apuntes sobre: “Pincipio (^) y final de línea ($)”
^\d\d$
-Explicación 1: Encuentra y selecciona [match] que sea exactamente una línea que contenga
un dígito y luego otro dígito, y nada más ni al inicio ni al final.
’
’
^\d{3,6}$
-Explicación 2: Encuentra y selecciona [match] que sea exactamente una línea que contenga
entre uno y seis dígitos, y nada más ni al inicio ni al final.
’
’
^[^\d].*$
-Explicación 2: Encuentra y selecciona [match] que sea exactamente una línea que inicie
con algo que no sea un dígito, y que luega tenga o no cualquier tipo y cantidad de caracteres.
Por ejemplo la siguiente expresión regular:
^(\d\d[^a-zA-Z]?){3}$
Nos permitiría hacer un match exacto por cada una de las siguientes líneas:
555658
56-58-11
56.58.11
56.78-98
65 09 87
76y87r98
Exceptuando la última línea, porque no cumple con la expresión regular.
Reto anterior
^(\d{2}[\W]?){3,}$
que funcion cumplen los ()
Me pongo a pensar en las cosas que se pueden hacer con esto y es simplemente increíble
Pasemos a la próxima clase… (muy puntual, por cierto)
/////////////////////////////////////////////////////////////////////////////////
/////////////////////// Principio (^) y final de linea ($) //////////////////////
/////////////////////////////////////////////////////////////////////////////////
// Estos dos caracteres indican en qué posición de la línea debe hacerse la búsqueda:
// el ^ se utiliza para indicar el principio de línea
// el $ se utiliza para indicar final de línea
// ^ ------------- $ Esto me busca toda la línea como un match
var e = /^\d{2,5}$/; // Toda la línea con 2 a 5 dígitos
var e = /^\w+,\w+,\w+$/; // Selecciona toda la líena con tres separadores de coma
var e = /^(\w+,){2,2}\w+$/; // También se traduce a esto
Excelente contenido
Me encanta este curso
Excelente.
Estuve probando y, arme esta expresión regular:
^\d{2}$|^\d{10}$
Si tuviesemos el siguiente contenido:
12
123
1234
12345
12345s678910
12345678910a
13453243
5556581111
Solo haría match con el primero y el último resultado, espero que le sea útil a alguno.
La respuesta más corta encontrada:
\d\D.+
el ^ se utiliza para indicar el principio de línea
el $ se utiliza para indicar final de línea
^ ------------- $
Nota: El match es una linea entera o se descarta
Una solución al reto de la clase anterior utilizando los operadores explicados en esta clase.
^[\d\d\W]{6,8}$
^ inicio de linea
$ fin de linea
^xx$ lines completas que cumplan
Alguien me puede explicar lo siguiente :
\w+ es diferente a [\w+] ¿Por qué?
\w+ es igual (\w+) ó [\w]+
Los corchetes hacen clases, pero por que su comportamiento \w+ diferente a [\w+]
El ejercicio anterior: ^(\d{2,2}[\W]?)+$
Para hacer una sentencia de busqueda condicionando una linea completa hacemos los siguiente: ^<REGEX>$ Los simbolos ^ y $ denotan el inicio y el final de la linea en ese orden. Por ejemplo, ^\d{1,6}$ va a encontrar las lineas que tengan solamente entre 1 a 6 digitos.
Para el grupo de 3 numeros de a dos digitos, ej:
555658
56-58-11
56i58g59
asi arme el Regex:
^(\d{2}[^a-z\n]?){3}$
Ejercicios de regex de hackerrank, abarcan todo lo que se ha visto y mas:
https://www.hackerrank.com/domains/regex
Estos dos caracteres indican en qué posición de la línea debe hacerse la búsqueda:el ^ se utiliza para indicar el principio de líneael $ se utiliza para indicar final de línea
^ ------------- $
1 csv1,csv2,csv3,csv4,csv5
2 1234,452,376,761
3 123,444,212,123
^(\w+,){3}\w+$ # hace match con la linea 2 y 3
Increible el las expresiones de principio a fun de las expresiones regulares para cerrar una linea, me quede impresionado.
Python
Inicio y fin de línea: ^, $
Los símbolos de acento circunflejo (^) y dólar ($) indican que nuestro patrón de búsqueda debe contener respectivamente el inicio o fin de una línea en una cadena de texto. En el siguiente ejemplo, la expresión regular ‘^Python’ busca ocurrencias de la cadena Python al inicio de la línea, y por eso el método findall() devuelve sólo una ocurrencia a pesar de que la frase contenga dos veces la cadena ‘Python’.
>>> import re
>>> frase = "Python no sólo es un lenguaje de programación, Python es mi lenguaje de programacón favorito."
>>> patron = '^Python'
>>> re.findall(patron, frase)
['Python']
>>> frase = "Me gusta aprender Python y programar en Python"
>>> patron = 'Python$'
>>> re.findall(patron, frase)
['Python']
/(\w+,){2}(\w+){1}/
En caso de que quieran mantener las 5 columnas y solamente escoger las tres primeras filas:
^(\w{3,4},?){5,5}$
Tambien se podria asi,
^(\w+,){2,2}\w+$
Aunque mas abajo publicaron una mejor
^\d+-^\d+-^\d+-
555658
56-58-11
56.58.11
56-58.11
56 58 11
56y58r11
No me funciono
Me sirvió mucho está
^(\w+,?){1,}$
<div.*[class=.carousel.]>
Muy buena clase, me encanta este curso y solo llevo 3 dias pero siento que he aprendido un montón.
^principio de línea
$ final de línea
Otra manera de escribir la expresión del primer ejemplo del CSV, colocando en lugar del 2 la cantidad de columnas - 1 del archivo:
^([\w]*,){2,2}[\w]*$
Viendo esta clase me di cuenta que en el reto anterior quedaría mejor así:
^(\d{2,2}[\W]*){3}$
el ^ se utiliza para indicar el principio de línea
el $ se utiliza para indicar final de línea
^ ------------- $
“Todo o Nada”
como decirle al programa que es un no o un inicio? no veo bien la diferencia
“Me regañan por hablar mal” by el profe buena onda
GIS: Geographic Information Systems ó Sistemas de Información Geográfica 🌍💚.
^\d{3,7}$ -> Esta búsqueda selecciona las líneas que empiecen con 3 dígitos y tengan como máximo 7.
^[\D].*$ -> Esta búsqueda selecciona todas las líneas que NO empiecen con digitos y terminen con cualquier carácter (números incluídos).
Seleccionar líneas de código con el principio y final de línea es útil para cualquier lenguaje de programación para descartar líneas que no sirven, para descartar “basura”, ruido en las estadísticas; se adquiere información que es más valiosa.
\d[^a-z]+
^ ------------- $ : indica que todo es una sola linea
super
muy util
bien
Super la clase.
//todo lo que no inicie con un digito
^[^\d].*$
//manejar archivos donde solo termine con 3 coincidencias
//hace match
csv1,csv2,csv3
cvs3,csv4,csv5
2,1,1
//no hace match
1234,1234,2343,22
34,23-34.23.,23
34,4
^\w+,\w+,\w+$
/// solo buscar cuando una linea tienen de 3 a 5 digitos
12 //no pasa
123
1234
12345
12345678910//no pasa
^\d{3,5}$
Pude mejorar mi respuesta al reto pasado para que si se tiene una cadena de mas de 6 digitos tome los 6 iniciales e ignore el resto
^(\d{2}\W?){3,3}
Excelente, ahora tenemos más herramientas para hacer limitaciones en nuestras búsquedas de datos. Algo que debemos tener presente es que se basan en el principio y final de la línea, así que si la línea comienza con un carácter invisible y no lo tomamos en cuenta, este tipo de búsqueda no nos mostrara los datos.
Me encanta
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?