2012-09-04 5 views
1

Je me demande comment je peux utiliser regex pour reformater le format suivant. Je dispose d'un fichier avec les colonnes de style suivantes:Utilisation de regex pour le fichier délimité par des colonnes

AG2912 
3760  3913 
3293  3920 

AG2102 
3209  0201 
3021  0383 

mais je veux dans le format suivant:

AG2912 
3760  3913  3293  3920 

AG2102 
3209  0201  3021  0383 

En outre, le nombre de lignes par colonne varient.

Répondre

1

Une façon utilisant awk:

awk '/^AG/ { print } /^[0-9]/ { printf "%s\t", $0 } /^$/ { printf "\n\n" } END { printf "\n" }' file.txt 

Résultats:

AG2912 
3760  3913 3293  3920  

AG2102 
3209  0201 3021  0383 
1

Puisque vous n'avez spécifié aucune langue, je vais juste mettre les expressions de recherche et de remplacement.

Recherche: \n Remplacer: \t

+0

Je suis juste en utilisant une expression régulière. –

+0

Les expressions régulières sont traitées par un moteur regex et ce moteur se trouve dans un code ou un éditeur. C'est ce que je veux dire. Quoi qu'il en soit, la réponse est valable pour tout moteur regex compatible PCRE. – m0skit0

Questions connexes