Notepad++: busque un método en un código fuente y elimínelo excepto el argumento

Notepad++: busque un método en un código fuente y elimínelo excepto el argumento

Tengo varios miles de archivos de código. Para el futuro necesito deshacerme de un método pero quiero mantener el argumento en la misma línea. Me gustaría resolver el problema con expresiones regulares en Nodepad++

El método se ve así

self.result(lib.file.SetValue('set accelerator', False, subtitle='Disable mode(auto)'))

Como resultado quiero el siguiente contenido.

lib.file.SetValue('set accelerator', False, subtitle='Disable mode(auto)')

Entonces necesito deshacerme de self.result(y del último paréntesis.)

Encontré en otro hilo un problema similar.

Cómo eliminar todo el texto excepto el que está entre dos cadenas (Notepad++)

Es obvio que no puedo hacer lo siguiente.

buscar:

self.result(([^))]*)        #Match "self.result("  followed by any
                            #number of characters which are not "))"

replace with \1)            #replace with what is in between and 
                            #add a parentheses

¿Alguien me puede ayudar?

Muchas gracias

Respuesta1

Necesito deshacerme de un método pero quiero mantener los argumentos en la misma línea.

  • Menú "Buscar" > "Reemplazar" (o Ctrl+ H)

  • Establezca "Buscar qué" en self.result\((.*)\)\R.

  • Establezca "Reemplazar con" en\1

  • Habilite "Expresión regular" y "coincide con nueva línea"

  • Haga clic en "Reemplazar todo"

    ingrese la descripción de la imagen aquí

Notas:

  • Uso \r\npara EOL de Windows

  • Uso \npara EOL de Unix/OSX

  • Uso \rpara EOL de Mac OS (hasta la versión 9)

  • Alternativamente use \Rel cual debería funcionar en todos los sistemas operativos

Antes:

self.result(lib.file.SetValue('set accelerator', False, subtitle='Disable mode(auto)'))

Después:

lib.file.SetValue('set accelerator', False, subtitle='Disable mode(auto)') 

Otras lecturas

información relacionada