Expression regulière avec perl
Résolu
syl
-
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je cherche à identifier des numeros dans un text puis de les remplacer par rien par le script ci-desous mais le script ne marche pas. merci de m'indiquer ce qui ne vas pas si possible.
#!/usr/bin/perl -w
open(FILEINPUT,"$ARGV[0]") || die "erreur de lecture de fichier :$!";
while ($ligne=<FILEINPUT>){
if ($ligne=~ s/[0-9]//g){
print $ligne;
}
}
close(FILEINPUT);
Je cherche à identifier des numeros dans un text puis de les remplacer par rien par le script ci-desous mais le script ne marche pas. merci de m'indiquer ce qui ne vas pas si possible.
#!/usr/bin/perl -w
open(FILEINPUT,"$ARGV[0]") || die "erreur de lecture de fichier :$!";
while ($ligne=<FILEINPUT>){
if ($ligne=~ s/[0-9]//g){
print $ligne;
}
}
close(FILEINPUT);
A voir également:
- Expression regulière avec perl
- Expression écrite cm1 cm2 télécharger gratuit - Télécharger - Éducatifs
- Microsoft expression encoder - Télécharger - Divers Utilitaires
- Avoir du ping expression ✓ - Forum jeux en ligne
- C quoi un ping? ✓ - Forum Réseau
- Expression de recherche - Guide
5 réponses
Hi, Je n'arrive pas a reconaitre les nombres dans un text pour les remplacer par rien. Quand je passe le programme sur le text il me sort le text sans modification. Ce que je souhaite faire c'est de passer le script sur le text pour que l'expression reg. remplace les nombre par rien. Je crois mon problème se trouve au niveau 'print $ligne
open(FILEINPUT,"$ARGV[0]") || die "erreur de lecture de fichier :$!";
while ($ligne=<FILEINPUT>){
# on cherche une balise : <[^>]+>
$ligne=~s/0-9//g;
print $ligne;
}
close(FILEINPUT);
open(FILEINPUT,"$ARGV[0]") || die "erreur de lecture de fichier :$!";
while ($ligne=<FILEINPUT>){
# on cherche une balise : <[^>]+>
$ligne=~s/0-9//g;
print $ligne;
}
close(FILEINPUT);
chez moi, il fonctionne
$ cat a3 a 1 a 2 a 3 b 2 b 4 b8 b 0 c 10 234 f 33 g 4 $ ./p4 a3 a a a b b b b c f g $
Merci Dubcek, ça fonctionne aussi finalement. J'ai remplacer l'expr. reg. par ça $ligne=~s/[0-9]//g;
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question