Essayer de supprimer la première colonne d'un document

1

J'utilise cette commande ci-dessous pour supprimer la première colonne d'un document:

%s/^[^\t]*\zs\t[^\t]*\ze//g 

mais il dit commande non trouvée.

Une idée?

user35538
la source
1
Je pense qu'il devrait y avoir un : au début de la commande.
Mikel
2
Veuillez clarifier ce que vous entendez par "colonne".
Andrea Spadaccini
S'il vous plaît ne pas poste croisée .
Dennis Williamson

Réponses:

5

Vous devez l'écrire dans commander mode, pas Ordinaire . En d'autres termes, appuyez sur : premier.

:%s/^[^\t]*\zs\t[^\t]*\ze//g 

Modifier: Pour supprimer la première colonne:

:%s/^\S*\s\+//

\s est "espace" et \S est son inverse.

grawity
la source
merci, mais maintenant, il est indiqué que "l'expression n'a pas été trouvée" ... Une idée?
user35538
@ user35538, voulez-vous dire "motif introuvable", non? Où avez-vous trouvé cette expression? Je n'ai pas beaucoup d'expérience avec l'expression régulière. Tu devrais le vérifier.
Johnny
@ user35538 ​​comment les colonnes sont-elles séparées? si par espace cela devrait suffire::% s / ^ [^] * // g
Mr Shunz
3

Je ne reçois pas d'erreur de votre commande, mais cela supprime la deuxième colonne. Cette commande supprimera la première colonne:

:%s/^[^\t]*\t\ze[^\t]*//g
Dennis Williamson
la source
3

Vous pouvez également utiliser le mode Visual-Block.

Sur la première ligne du fichier, dans la première colonne, appuyez sur Contrôle + v pour entrer en mode Visual Block, suivi de Décalage + g (passe à la dernière ligne du fichier) puis utilisez l pour aller à droite aussi loin que vous le souhaitez. Vous devriez voir une sélection visuelle de chaque colonne lorsque vous vous déplacez vers la droite du fichier. X supprimera ensuite ces colonnes.

Voir également: :he block

alesplin
la source
0

Comme j'ai déjà répondu sur StackOverflow, vous pouvez utiliser la commande suivante:

:%s/^.//
Andrea Spadaccini
la source
1
Cela ne supprimera que le premier caractère. Je pense que le PO veut tout supprimer jusqu'au premier onglet.
Mikel