sharp regular online regex replace nano

regular - ¿Equivalencia y sustitución basadas en Regex con nano?



regular expression replace (3)

Soy consciente de la funcionalidad de búsqueda y reemplazo de nano , pero ¿es capaz de usar expresiones regulares para hacer coincidir y sustituir (en particular, las sustituciones que usan una parte del partido)? Si es así, ¿puede proporcionar algunos ejemplos de la sintaxis utilizada (tanto para hacer coincidir como para reemplazar)?

Me corté los dientes con las expresiones regulares al estilo de Perl, pero descubrí que los editores de texto a veces presentan su propia sintaxis.


El formato / notación de expresión regular para nano usa " expresión regular extendida ", es decir expresión regular extendida POSIX , que es usada por egrep y sed -r , esto incluye metacaracteres . , [ y ] , ^ , $ , ( , ) , /1 a /9 , * , { y } ? , + , | y clases de caracteres como [:alnum:] , [:alpha:] , [:cntrl:] , [:digit:] , [:graph:] , [:lower:] , [:print:] , [:punct:] , [:space:] , [:upper:] y [:xdigit:] .

Para obtener una documentación más completa, puede ver la página de manual, man 7 regex en Linux o man 7 re_format en OS X. Esta página también puede proporcionarle la misma información: http://en.wikipedia.org/wiki/Regular_expression#POSIX_Basic_Regular_Expressions

Desafortunadamente, en nano parece que no hay forma de hacer coincidir nada que abarque varias líneas.


Mi versión de nano tiene una opción para cambiar a la búsqueda de expresiones regulares con el meta carácter + R En cygwin en Windows, la meta-clave es alt , así que ctrl + / para entrar en el modo de búsqueda y reemplazo, y luego alt + r para cambiar a la búsqueda de expresiones regulares.


Necesita agregar, o dejar de comentar, la siguiente entrada en su archivo nanorc global (en mi máquina, era /etc/nanorc ):

set regexp

A continuación, encienda una nueva terminal y presione CTRL + / y realice los reemplazos, que ahora deberían ser compatibles con Regex.

EDITAR

Buscar conf->(/S+) :

Reemplace con /1_conf

Presione a para reemplazar todas las ocurrencias:

Resultado final: