3 votes

Notepad++ : Trouver une méthode dans un code source et la supprimer à l'exception de l'argument

J'ai plusieurs milliers de fichiers de code. Pour le futur, j'ai besoin de me débarrasser d'une méthode mais je veux garder l'argument dans la même ligne. Je voudrais résoudre le problème avec regex dans Nodepad++.

La méthode ressemble à ceci

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

En conséquence, je veux le contenu suivant

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

Donc je dois me débarrasser de self.result( et de la dernière parenthèse )

J'ai trouvé dans un autre fil un problème similaire

Comment supprimer tout le texte sauf ce qui se trouve entre deux chaînes de caractères (Notepad++)

Il est évident que je ne peux pas faire ce qui suit

chercher :

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

Quelqu'un peut-il m'aider ?

Merci beaucoup.

0voto

DavidPostill Points 140654

J'ai besoin de me débarrasser d'une méthode mais je veux garder les arguments dans la même ligne.

  • Menu "Recherche" > "Remplacer" (ou Ctrl + H )

  • Définissez "Trouver quoi" sur self.result\((.*)\)\R .

  • Réglez "Remplacer par" sur \1

  • Activer "Expression régulière" et "correspond à une nouvelle ligne".

  • Cliquez sur "Remplacer tout".

    enter image description here

Notes :

  • Utilice \r\n pour les EOL de Windows

  • Utilice \n pour les EOL d'Unix/OSX

  • Utilice \r pour Mac OS (jusqu'à la version 9) EOLs

  • Vous pouvez également utiliser \R qui devrait fonctionner sur tous les systèmes d'exploitation

Avant :

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

Après :

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

Autres lectures

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X