REGEX SED et commande substitute
tht123
Messages postés
72
Statut
Membre
-
jipicy Messages postés 41342 Statut Modérateur -
jipicy Messages postés 41342 Statut Modérateur -
Bonjour,
Je tente de remplacer une ligne par elle même complétée par des points virgules à des endroits fixes, mais sans succès...
Le problème est que toute les lignes n'ont pas la même longueur..
Je dois faire :
REMPLACER caractère n°16 par ";"
offset1=25
offset2=15
i=0
While not(FIN DE LIGNE) DO
begin
REMPLACER caractère n°50+(i*offset1) par ";"
REMPLACER caractère n°90+(i*offset2) par ";"
inc(i);
end;
Pourriez vous m'aider je suis dans le ...
Merci dores et déjà!
Je tente de remplacer une ligne par elle même complétée par des points virgules à des endroits fixes, mais sans succès...
Le problème est que toute les lignes n'ont pas la même longueur..
Je dois faire :
REMPLACER caractère n°16 par ";"
offset1=25
offset2=15
i=0
While not(FIN DE LIGNE) DO
begin
REMPLACER caractère n°50+(i*offset1) par ";"
REMPLACER caractère n°90+(i*offset2) par ";"
inc(i);
end;
Pourriez vous m'aider je suis dans le ...
Merci dores et déjà!
A voir également:
- REGEX SED et commande substitute
- Invite de commande - Guide
- Commande sfc scannow - Guide
- Invite de commande mac - Guide
- Commande winget upgrade - Guide
- Commande en cours de validation fnac - Forum Consommation & Internet
2 réponses
tht123
Messages postés
72
Statut
Membre
Tiens, ça fait pas tout à fait ce que tu veux, mais bon vu la complexité de la chose, c'est une bonne piste à explorer...
[tmpfs]$ cat tht123
TXT000001 DATA XYZ GVFTR NJI X4 YY
TXT000651 DATA Xtta GTRE NJI aa gg 56
TXT003451 DATA XYZ HVFTR NJI XX YY aa bb kk
[tmpfs]$ sed '
s/\(.\{9\}\).\(.*\)/\1;\2/
s/\(.\{19\}\).\(.*\)/\1;\2/
s/\(.\{29\}\)[ ][^a-zA-Z]*\(.*\)/\1;\2/
s/[ ]\{3,\}/;/g
' tht123
TXT000001;DATA XYZ ;GVFTR NJI;X4;YY;
TXT000651;DATA Xtta;GTRE NJI;aa;gg;56;
TXT003451;DATA XYZ ;HVFTR NJI;XX;YY;aa;bb;kk
[tmpfs]$;-))