108 votes

Comment puis-je supprimer des lignes spécifiques dans Notepad++?

Je suis en train de nettoyer quelques fichiers de code (C#) et je veux supprimer les régions. Et je voudrais supprimer toutes les lignes contenant le mot '#region'. C'est juste un exemple, et je peux penser à plusieurs autres utilisations, mais est-ce même possible ?

2 votes

Je suis tenté de voter pour que cette question soit hors sujet ... C'est principalement une question sur notepad++ et un modèle de travail spécifique, mais pas nécessairement liée à la programmation :/

0 votes

@AndreasNiedermair d'accord

306voto

Ray Points 22127

Notepad++ v6.5

  1. Menu Recherche -> Rechercher... -> Onglet Marquer -> Rechercher : votre texte de recherche, cochez Ligne de signet, puis Tout marquer. Cela marquera toutes les lignes contenant le terme de recherche, vous verrez des cercles bleus dans la marge.

  2. Ensuite Menu Recherche -> Signet -> Supprimer les lignes signetées. Cela supprimera toutes les lignes marquées.

Vous pouvez également utiliser une expression régulière pour rechercher. Cette méthode ne donnera pas de ligne vide comme celle de John et supprimera réellement la ligne.

Anciennes versions

  1. Menu Recherche -> Rechercher... -> Rechercher : votre texte de recherche, cochez Ligne de signet et cliquez sur Tout trouver.
  2. Ensuite Recherche -> Signet -> Supprimer les lignes signetées

9 votes

Merci! Wow, je n'étais pas au courant que NP++ faisait cela.. un vrai gain de temps. Trouver et mettre en signet des lignes + supprimer des lignes. Génial. Merci!!

0 votes

Quel piratage, pourquoi ne puis-je pas simplement remplacer \r\n par "" avec regex :(

0 votes

Incroyable. Cela a de nombreuses applications flexibles, surtout pour moi en étant utilisé pour supprimer les répertoires .svn de la sortie de grep. Cela m'a aidé à réduire considérablement une recherche très large de plus de 25 000 lignes à juste moins de 400 résultats pertinents. Sérieusement... MERCI.

40voto

John T Points 14067

Vous pouvez utiliser le menu Rechercher -> Remplacer... (Ctrl + H).

Il dispose d'une fonctionnalité d'expression régulière pour le remplacement. Vous pouvez utiliser une expression régulière qui correspond à #region ainsi qu'à tout ce qui se trouve sur la ligne, et le remplacer par un espace vide.

0 votes

Merci, j'ai fait cela et ça fonctionne. Mais maintenant j'essaie de remplacer \n\n par juste un \n mais cela ne semble pas fonctionner, des idées?

1 votes

Utilisez la recherche étendue pour remplacer les séquences d'échappement (bouton radio juste au-dessus de regex)

0 votes

Merci John. J'ai fait cela et cela fonctionne pour un saut de ligne \n, mais pas pour deux. Je cherche \n\n et le remplace par \n, mais cela ne fonctionne pas. Est-ce que cela fonctionne pour toi ?

2voto

Nick Points 1

La réponse de Jacob à John T fonctionne parfaitement pour supprimer toute la ligne, et vous pouvez trouver dans les fichiers avec cela. Assurez-vous de cocher "Expression régulière" en bas.

Solution: ^.*#region.*$

2 votes

Il a dit qu'il veut supprimer la ligne, pas la remplacer par quelque chose

1voto

Val Points 985

Enquêtez sur ce qu'est votre EOL, \n ou \r\n. Ensuite, remplacez .*#region.*\r\n par rien en mode regexpr.

0voto

northpole Points 5793

Vous pouvez essayer de remplacer #region par \n, en activant le mode de recherche étendu.

2 votes

L'utilisateur a déclaré qu'il voulait "supprimer toutes les lignes", vous les remplaceriez par une nouvelle ligne.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X