Título: (Consulta) Las endemoniadas expresiones regulares Publicado por: class_OpenGL en 1 Diciembre 2017, 13:09 pm Hola, muy buenas, me preguntaba si podrían explicarme una expresión regular que me encontré en un Makefile:
Citar s/$(BOARD).$(1)=\(.*\)/\1/p $(BOARD)=mega $(1)=build.mcu Esa expresión la ejecuta el siguiente comando: Citar sed -ne "s/$(BOARD).$(1)=\(.*\)/\1/p" <ruta> donde <ruta> es la ruta de un archivo de texto (si de paso me explican bien qué hace sed estupendo) Muchas gracias Título: Re: (Consulta) Las endemoniadas expresiones regulares Publicado por: engel lex en 1 Diciembre 2017, 14:18 pm en tal caso si necesitas explicacion o pruebas, estas paginas son utiles
https://regex101.com/ (https://regex101.com/) https://regexr.com/ (https://regexr.com/) sed es una aplicacion que leer un archivo (o stream) linea a linea y aplica regex sobre los comandos la primera s implica substitución y la ultima p implica imprimir el resultado de resto sinceramente no entiendo mucho el sentido... creo que es porque sed no parece aplicar el regex por completo (es decir, los $ deberán tener \ al igual que los parentesis, pero más adelante si los tienen)... Título: Re: (Consulta) Las endemoniadas expresiones regulares Publicado por: Slava_TZD en 1 Diciembre 2017, 17:10 pm Substituye $(BOARD).$(1)= por lo que quiera que esté después del =.
Back-references and Subexpressions (https://www.gnu.org/software/sed/manual/html_node/Back_002dreferences-and-Subexpressions.html) Título: Re: (Consulta) Las endemoniadas expresiones regulares Publicado por: class_OpenGL en 1 Diciembre 2017, 19:24 pm Ahhh vale entiendo. Muchas gracias a tod@s!
|