<aside> 🤔 Antes de leer esto por favor repasa la diferencia entre concepto y definición
</aside>
Al igual que una navaja suiza, las expresiones regulares son una herramienta increíblemente útil pero tienes que darle la importancia y las responsabilidades adecuadas a cada una, ya que no son la panacea, no solucionan todos los problemas.
El uso más conveniente de las expresiones regulares es buscar coincidencias o matches de cadenas en un texto, y si es necesario, reemplazarlas con un texto diferente.
Este es el texto ejemplo, no es necesario usar todo.
moviedemo/movies.dat at master · gingsmith/moviedemo
Puedes usar esta herramienta en caso de no contar con editor ni consola.
regex101: build, test, and debug regex
Se pueden generar grupos al utilizar paréntesis
()
, cada uno de esos paréntesis a la hora de reemplazar podemos acceder a el valor dentro del grupo con la variable$1, $2, … $n
, por ejemplo:Find:
^\\d{1,5}+::([\\w\\s:,\\)\\(\\.\\'\\-\\&\\!\\/?]+)\\s\\(\\d\\d\\d\\d\\)::.*$
Replace
`insert into movies (year, title) values ($2, '$1');`
Al momento de formar los grupos en REGEX se denotan con
$n
en donde n es un numero como 1,2,3 … , en este ejemplo lo que va hacer es borrar todo pero deja intactos los grupos, los reacomoda y además los inserta en un formato diferente.
No se si entendí bien. Según los grupos creados con los () son llamados según el símbolo de $n donde n es igual a la posición en que es invocada el grupo?
Efectivamente cada grupo puede ser tomado con las variables $1 $2 y así sucesivamente. Por ejemplo:
Y el resultado será: