J'essaie de me débarrasser de tout après une colonne dans Notepad ++. Le mode colonne n'est pas une option. C'est possible?
Ce que j'ai:
70.97.110.40 159 ms [n/a] 21
70.97.117.177 134 ms [n/a] 21
70.97.120.10 75 ms [n/a] 21
70.97.122.105 87 ms www.portless.net 21
70.97.122.106 89 ms www.popovetsky.org 21
70.97.122.107 95 ms www.psmythe.net 21
70.97.122.104 98 ms wasabi.prostructure.com 21
70.97.122.108 89 ms crm.prostructure.com 21
70.97.122.109 87 ms internal.prostructure.com21
Ce que je veux:
70.97.110.40
70.97.117.177
70.97.120.10
70.97.122.105
70.97.122.106
70.97.122.107
70.97.122.104
70.97.122.108
70.97.122.109
Si les données de la première colonne ne contiennent jamais d'espace, vous pouvez utiliser une expression régulière rechercher et remplacer pour obtenir ce que vous voulez.
En mode d'expression régulière, recherchez:
^([^ ]*).*
Et remplace par
\1
Qu'est-ce que cela fait:
^
indique que toute correspondance doit commencer au début d'une ligne.([^ ]*)
est une expression qui ne contient pas d'espace. Le match est gourmand, donc tout sera mis en correspondance jusqu'au premier espace (ou à la fin de la ligne, selon la première éventualité)..*
est tout le reste sur la ligne.
\1
fait référence à la partie de la correspondance à l'intérieur des parenthèses. C'est-à-dire que toute la ligne est remplacée par le bit de la première colonne.
Voici une expression régulière plus simple que vous pouvez utiliser pour obtenir le même effet. Remplacer
.*
(notez l'espace qui le précède)
avec rien. Cela supprimera tout après et incluant le premier espace. Cela fonctionnera tant que vos adresses IP ne sont jamais préfixées par des espaces (comme c'est le cas dans votre exemple).
Si vous utilisez Windows et si cela ne vous dérange pas de laisser des espaces (vous pouvez les trouver/les remplacer ultérieurement), utilisez la fonction Sélection de bloc:
Un expression régulière est plus rapide, mais vous pouvez faire des choses très délicates avec les macros si la tâche est plus compliquée.
Vous pouvez enregistrer une macro:
Puis rejouez-le:
Placez le curseur après 70.97.110.40
.
Presse Altet faites glisser le curseur vers la droite et vers le bas pour sélectionner la partie non souhaitée.
Presse Backspace ou Delete.
Voici quelques méthodes alternatives à la réponse donnée.
Si vos données sont fixed width
, vous pouvez également utiliser l'expression régulière suivante dans la recherche:
Trouver quoi: ^(.{16}).*$
Remplacer par: \1
C'est formidable si les données que vous souhaitez conserver contiennent un espace, comme quelqu'un l'a mentionné. De plus, encore une fois pour les données de largeur fixe, vous pouvez utiliser Column Mode Editing
. C'est une petite fonctionnalité intéressante qui vous permet de modifier plusieurs lignes de données dans le même emplacement de colonne. Voir Édition en mode colonne.
Il mentionne les touches fléchées, mais vous pouvez également utiliser Page Up/Down
pour une méthode plus rapide, ainsi que les touches End
et Home
. La souris fonctionne aussi. Mais vous pouvez utiliser cela pour une méthode ad hoc de suppression de données après un certain point, en particulier s’il ne s’agit que de quelques lignes. C'est également bon pour la copie de données, mais la façon dont elles sont collées est un peu étrange, vous voudrez donc vous habituer à cela en premier.
Similaire à enthdegree:
S'il y a une ligne vide à la fin du fichier, appuyez simplement sur Up Arrow avant # 3.
Ce n'est pas parfait, mais c'est pratique.
Voici un moyen visuel:
Ce n'est pas "basé sur la colonne". Cela fonctionne uniquement parce que toutes vos adresses IP sont alignées.
En mode d'expression régulière, recherchez:
\ t. *
Et remplace par
Rien
Supprimer tout après la première colonne dans Notepad ++: