Remplacer /supprimer une chaine de caractéres
Fermé
emilie
-
28 avril 2008 à 22:47
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 - 30 avril 2008 à 19:56
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 - 30 avril 2008 à 19:56
A voir également:
- Remplacer /supprimer une chaine de caractéres
- Supprimer une page word - Guide
- Caractères ascii - Guide
- Supprimer compte instagram - Guide
- Remplacer disque dur par ssd - Guide
- Chaine tnt gratuite sur mobile - Guide
6 réponses
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
28 avril 2008 à 22:58
28 avril 2008 à 22:58
Salut,
lami20j@debian:~/trash$ cat emilie.pl #!/usr/bin/perl use strict;use warnings; open LIRE,"fic.txt" or die " E/S : $!\n"; open ECRIRE,">fic_resultat.txt" or die "E/S : $!\n"; while(<LIRE>){ s/[{}]//g; s/;/,/g; s/^\d+,// if $.==1; print ECRIRE; } __END__ lami20j@debian:~/trash$ cat fic.txt {123,{1.5,0.2;0.8}, {0.5,0.6,1.4}, ... {0.9,2.1,1.3}} lami20j@debian:~/trash$ perl emilie.pl lami20j@debian:~/trash$ cat fic.txt {123,{1.5,0.2;0.8}, {0.5,0.6,1.4}, ... {0.9,2.1,1.3}} lami20j@debian:~/trash$ cat fic_resultat.txt 1.5,0.2,0.8, 0.5,0.6,1.4, ... 0.9,2.1,1.3 lami20j@debian:~/trash$
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
28 avril 2008 à 23:07
28 avril 2008 à 23:07
C'est juste un exemple.
Teste le pour voir si ça te conviens.
Ensuite on verra comment on traites ta centaine de fichiers ;-)
Teste le pour voir si ça te conviens.
Ensuite on verra comment on traites ta centaine de fichiers ;-)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
29 avril 2008 à 11:16
29 avril 2008 à 11:16
Salut,
alors essaie comme ça
alors essaie comme ça
#!/usr/bin/perl use strict;use warnings; open LIRE,"fic.txt" or die " E/S : $!\n"; open ECRIRE,">fic_resultat.txt" or die "E/S : $!\n"; while(<LIRE>){ s/[{}]//g; s/;/,/g; s/^\s+\d+,// if $.==1; print ECRIRE; } __END__
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
29 avril 2008 à 11:57
29 avril 2008 à 11:57
Mets ton fichier sur cjoint.com, pour que je fasse un test chez moi.
Merci
Merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
29 avril 2008 à 19:27
29 avril 2008 à 19:27
Chez moi, ça marche
lami20j@debian:~/trash$ cat emilie.pl #!/usr/bin/perl use strict;use warnings; open LIRE,"fic.txt" or die " E/S : $!\n"; open ECRIRE,">fic_resultat.txt" or die "E/S : $!\n"; while(<LIRE>){ s/[{}]//g; s/;/,/g; s/^\s+\d+,// if $.==1; print ECRIRE; } __END__Le résultat
0.000000, 0.000000, -0.000000, 0.000015, -0.000013, 9.857931, 60.601134, 0.000042, 0.000090, 0.000015, 21.646551, -0.000029, -3.043643, 5.187635, 0.402900, 0.662895, 0.340299, -1.265174, 0.313811, 0.445490, 0.212161, 6.949538, -12.209262, -0.055734, -0.166149, -5.008213, -0.212022, 0.244953, 0.278133, -1.645837, 0.235761, 2.592882, 1.024219, 0.717922, -2.120681, -0.426763, -0.305255, -0.138423, 0.244488, 0.179604, 0.000267, 0.600664, 0.397815, -4.469223, -1.249551, -1.902815, 4.135948, 0.915067, -0.714233, 0.074580, -0.084990, -0.295770, -0.242211, -0.214203, 0.094836, -0.158762, 0.300654, 1.576774, -0.245496, 0.379184, -0.799598, -0.548546, -0.822981, 0.286806, 0.120600, 1.118206, 0.010500, 0.141083, -0.722560, -1.996205, 0.181842, -0.815626, 0.106338, 2.122076, 1.002167, 0.011989, 0.035186, 0.570778, -0.298644, 0.447038, -0.081150, 0.143109, 0.179813, 0.332033, -0.055096, -0.149378, -0.584324, -0.141326, -0.030305, 0.412777, 0.513759, -0.582043, 0.093253, -0.538600, -0.218056, -0.082572, -0.042544, 0.050252, 0.209995, -0.041159, 0.209718, -0.514618, -0.012624, 1.040929, -0.002967, 1.137451, 0.016295, 0.575080, 0.007451, -0.110874, 0.294640, 0.081842, -0.081875, 0.111996, -0.150300, 0.033508, 0.174868, -0.039776, 0.091198, -0.132924, 0.050474, -0.174714, -0.541588, -0.390954, 0.256270, 0.147603, 0.088318, 0.041295, -0.049035, -0.472500, -0.062535, -0.459618, -0.060462, 0.329569, 0.318394, 0.158514, -0.169201, -0.541059, -0.035991, -0.140799, 0.081721, 1.002814, 0.405397, 0.310350, 0.636680, -0.069341, 0.010305, 0.017370, 0.011730, -0.017266, -0.244586, 0.001667, -0.238959, -0.001641, -0.009022, -0.311850, -0.086985, 0.043269, -0.205832, 0.122303, 0.235198, -0.067372, 0.472994, -0.074604, 0.018840, -0.122399, 0.158060, 0.038026, 0.040388, 0.098027, 0.165883, 0.029920, -0.028153, 0.124228, -0.363303, 0.181699, 0.058831, 0.167191, 0.025592, 0.030484, -0.012928, -0.025489, 0.196090, 0.008187, 0.272748, -0.154186, 0.470542, -0.823719, -0.078817, -0.726287, -0.360415, -0.045171, 0.104692, -0.079016, -0.028941, 0.118945, -0.009924, 0.156262, -0.120352, -0.028838, 0.074497, -0.308840, 0.026533, 0.150983, 0.026452, 0.045513, 0.027627, 0.016688, -0.009979, -0.097774, 0.132216, 0.016480, 0.063631, 0.231537, -0.040393, -0.255148, -0.104396, 0.002276, 0.146099, 0.185025, 0.004967, -0.145224, -0.033350, -0.036671, 0.284901, -0.009632, -0.031070, -0.088484, 0.334263, -0.089872, 0.022629, 0.032515, -0.181132, -0.054689, -0.192273, -0.041333, 0.305054, -0.290386, -0.151377, 0.187381, -0.650861, 0.061697, -0.063479, -0.022570, -0.023849, -0.038819, 0.247417, -0.023092, -0.247358, 0.045441, 0.059976, -0.058877, -0.016648, -0.120340, -0.233564, 0.100392, 0.075343, 0.028359, -0.003925, 0.014456, 0.066273, -0.052735, -0.147173, 0.126231, 0.019127, 0.086244, 0.055220, 0.011553, -0.050474, -0.186809, 0.033988, -0.054457, 0.006503, -0.006094, -0.088246, -0.165665, 0.066251, -0.044997, 0.089952, 0.008910, 0.027498, -0.281322, -0.102093, -0.125738, -0.086042, -0.017380, -0.085841, -0.043356, 0.020434, 0.058434, 0.046064, -0.070555, -0.154168, -0.260312, -0.029566, 0.477193, 0.047269, -0.043532, -0.124456, 0.040115, 0.001083, 0.011262, 0.056384, 0.127070, 0.104232, 0.260176, -0.017094, -0.003811, -0.088493, -0.027610, -0.040860, -0.046714, -0.042312, -0.044887, -0.022634, -0.137463, -0.014805, -0.074235, -0.001204, 0.073903, 0.266267, 0.152425, -0.107474, -0.085525, 0.016271, -0.002211, -0.050056, 0.047774, 0.025829, -0.057648, -0.061048, -0.085940, -0.062727, -0.099577, 0.014555, -0.029225, -0.033550, 0.045628, 0.170811, -0.147971, 0.041500, 0.161378, -0.007529, 0.069586, 0.102590, 0.035074, 0.054614, -0.014048, 0.114056, -0.058150, 0.087696, -0.001593, 0.093532, -0.035073, 0.045352, 0.033479, 0.070713, 0.050482, -0.113745, -0.085271, 0.282066, 0.110458, 0.121528, -0.031556, 0.027684, 0.059745, 0.003093, -0.091750, 0.023905, -0.029239, -0.029345, 0.019587, -0.104610, 0.023170, 0.179111, -0.000436, 0.083030, 0.103152, -0.061470, -0.024655, -0.133486, -0.020105, 0.081682, -0.017502, 0.105371, -0.023556, 0.207050, 0.062514, 0.028594, -0.049320, 0.057547, 0.008929, 0.096901, 0.001226, -0.098300, -0.080043, -0.131931, -0.010140, -0.170525, -0.104562, 0.087323, -0.081974, -0.104532, -0.045065, -0.107880, 0.076836, 0.044201, 0.156599, 0.017761, -0.095275, 0.098636, -0.051384, 0.001713, -0.062730, -0.044362, 0.047565, -0.043303, 0.164738, -0.033650, -0.162262, -0.074166, 0.076803, 0.124486, 0.132813, 0.045013, 0.115069, 0.167993, -0.190244, 0.100206, -0.037163, -0.035926, -0.000817, -0.026299, -0.034864, 0.009029, 0.190962, 0.063249, 0.325435, 0.059855, -0.054156, -0.164898, -0.027999, -0.071312, -0.201201, 0.049807, -0.011719, -0.036595, -0.090310, 0.084650, -0.106230, 0.049876, 0.062150, 0.065983, 0.001210, -0.105925, -0.026257, -0.030307, -0.057797, -0.121313, -0.065261, 0.075318, -0.182281, -0.071319, -0.120703, -0.120146, -0.021165, 0.087811, 0.197759, 0.084199, -0.026139, -0.010420, -0.048142, -0.009801, 0.092550, -0.076758, 0.063824, 0.023396, 0.024919, 0.077657, -0.214852, 0.117822, 0.078556, 0.165871, 0.006687, -0.001496, 0.122089, 0.086712, -0.087005, -0.175153, -0.111872, -0.137499, 0.079986, -0.036103, -0.113816, 0.030957, 0.079348, -0.089197, -0.152929, -0.004258, -0.083435, -0.219146, -0.130231, 0.160207, 0.097810, -0.138578, -0.045240, -0.125346, -0.037697, -0.050141, 0.138764, 0.083826, -0.034635, -0.161343, 0.080181, 0.196215, -0.031726, 0.063591, 0.080485, -0.059428, 0.040917, -0.006534, -0.145303, -0.116968, 0.010215, -0.088647, -0.012017, -0.077909, -0.032899, 0.046968, 0.010741, -0.001873, 0.006690, 0.050727, 0.133332, 0.087895, 0.011797, 0.081487, -0.009017, 0.004532, -0.133248, -0.083019, -0.032086, -0.029385, -0.066434, 0.008742, -0.095692, -0.023058, -0.034119, -0.023578, 0.022015, -0.088922, 0.060141, 0.072880, 0.031144, 0.203965, 0.121907, -0.064898, -0.085686, -0.014893, 0.047411, -0.089938, -0.037753, -0.042510, -0.122781, 0.041067, -0.057469, -0.089358, -0.052276, 0.057310, 0.045672, 0.077053, 0.037416, 0.056406, -0.105147, -0.009287, -0.017663, -0.028726, 0.180708, 0.167253, -0.075690, -0.001498, -0.009051, -0.008525, 0.161751, -0.057279, -0.046786, 0.164263, 0.331892, 0.007824, 0.045646, -0.004449, 0.069888, 0.094903, 0.004757, 0.017453, -0.064597, -0.078236, 0.038253, -0.119556, -0.085817, -0.014009, 0.024405, 0.093092, -0.048922, -0.004266, 0.059926, -0.122870, 0.037070, -0.000569, 0.002533, 0.013846, -0.027360, 0.011175, -0.032148, 0.021964, 0.010899, -0.016614, -0.200613, 0.055432, -0.010946, -0.062479, -0.010247, 0.020638, 0.112256, 0.066112, 0.071145, 0.042366, -0.028083, -0.003316, 0.105806, -0.026435, 0.084436, -0.050487, -0.001479, -0.029732, -0.208964, 0.047810, -0.004166, 0.034128, 0.034752, 0.001622, 0.046034, 0.090433, -0.004715, 0.065209, -0.076657, 0.064616, 0.111769, -0.093743, 0.026089, 0.005762, -0.015709, 0.040466, -0.122479, -0.015730, 0.064503, -0.149436, 0.089080, 0.044617, -0.045500, 0.085177, 0.036477, 0.015456, -0.071712, 0.017124, 0.132462, 0.094773, 0.027188, -0.007216, 0.043930, -0.100302, 0.089629, -0.023317, -0.011257, 0.022815, -0.000345, -0.007013, 0.033616, -0.113282, 0.004969, -0.255238, 0.033603, 0.078608, -0.066376, -0.020824, 0.108019, -0.126800, -0.058476, -0.016326, 0.013530, 0.132877, 0.023797, -0.015735, -0.078147, 0.029374, 0.057389, -0.018676, 0.021170, -0.057086, -0.030874, -0.023437, 0.003947, 0.048327, 0.045450, -0.063535, 0.046925, -0.026404, 0.007556, -0.055380, 0.001636, 0.125054, -0.015757, 0.040403, -0.084903, -0.040819, 0.027677, 0.007762, -0.105935, 0.094774, -0.012249, 0.066934, 0.017790, 0.019457, -0.002039, 0.025315, 0.004497, 0.038114, 0.020485, 0.099143, 0.029711, 0.050858, -0.105156, 0.002446, -0.045756, -0.204269, 0.009423, -0.060195, 0.049046, 0.032141, -0.013665, -0.119728, 0.027857, 0.009572, -0.073407, -0.108972, -0.004342, 0.123853, -0.119634, -0.006180, -0.075945, 0.042203, -0.002617, -0.027098, 0.130775, 0.029535, 0.028464, 0.040785, -0.042641, -0.143835, 0.089262, -0.027294, 0.050724, -0.008905, -0.074679, 0.007503, 0.016530, -0.053487, 0.018028
Salut ,
Je dois maintenat faire ca pour tout un tas de fichiers(une centaine...)
Comment je pourrais faire pour rentrer le nom du fichier en argument, pour pouvoir appeler le script perl depuuis un script qui parcourt tout mon repertoire de fichiers ?
un truc du genre :
foreach $f in rep
perl emilie.pl $f
(désolée pour la syntaxe pas terrible...)
Je dois maintenat faire ca pour tout un tas de fichiers(une centaine...)
Comment je pourrais faire pour rentrer le nom du fichier en argument, pour pouvoir appeler le script perl depuuis un script qui parcourt tout mon repertoire de fichiers ?
un truc du genre :
foreach $f in rep
perl emilie.pl $f
(désolée pour la syntaxe pas terrible...)
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
>
emilie
30 avril 2008 à 16:16
30 avril 2008 à 16:16
Salut,
je te repondrai ce soir ;-)
je suis au boulot et je n'ai pas trop du temps
je te repondrai ce soir ;-)
je suis au boulot et je n'ai pas trop du temps
emilie
>
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
30 avril 2008 à 16:21
30 avril 2008 à 16:21
Merci c'es trés sympa.
Bon aprem'
Bon aprem'
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
>
emilie
30 avril 2008 à 16:55
30 avril 2008 à 16:55
Si la méthode avec "sed" te convient, en supposant que tous les fichiers commencent par "fic" :
;-))
sed -si.bak 's/{.*{\|{\|}//g' fic*Le ".bak" est facultatif, cela permet de faire une sauvegarde du fichier original. Le "-s" permet de traiter chaque fichier un par un et non comme un seul et même fichier. Le "-i" permet de modifier le fichier en place.
;-))
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
>
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
30 avril 2008 à 17:04
30 avril 2008 à 17:04
Salut,
Si la méthode avec "sed" te convient,
en fait, la vraie raison c'est que jipicy sait que je suis un paresseux, donc ça m'evitera de travailler ce soir ;-))
Si la méthode avec "sed" te convient,
en fait, la vraie raison c'est que jipicy sait que je suis un paresseux, donc ça m'evitera de travailler ce soir ;-))
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
29 avril 2008 à 20:01
29 avril 2008 à 20:01
Salut,
sed 's/{.*{\|{\|}//g';-))
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
29 avril 2008 à 20:40
29 avril 2008 à 20:40
Salut,
en fait, si tu regardes bien, on a ça
{123,{1.5,0.2;0.8},
et elle veut obtenir
1.5,0.2,0.8,
donc pas de ;
en fait, si tu regardes bien, on a ça
{123,{1.5,0.2;0.8},
et elle veut obtenir
1.5,0.2,0.8,
donc pas de ;
lami20j@debian:~/trash$ cat fic.txt | sed 's/{.*{\|{\|}//g' 1.5,0.2;0.8, 0.5,0.6,1.4, ... 0.9,2.1,1.3sinon, je préfère ta version qui est plus courte ;-)
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
>
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
29 avril 2008 à 20:44
29 avril 2008 à 20:44
A part que dans le fichier joint, y'a pas de point virgule ;-\
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
29 avril 2008 à 20:45
29 avril 2008 à 20:45
python -c "print ''.join( __import__('re').split('^\{.+\{',__import__('urllib').urlopen('http://cjoint.com/data/eDl7CK0oQr_fic.txt').read())).replace('{', '').replace('}', '')"
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
>
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
29 avril 2008 à 20:47
29 avril 2008 à 20:47
Trop long ;-DD
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 527
>
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
29 avril 2008 à 20:48
29 avril 2008 à 20:48
:-DDD
N'empêche que moua je fais le téléchargement en même temps :p
N'empêche que moua je fais le téléchargement en même temps :p