perl + regex [resolu] - Perl - Programmation
Marsh Posté le 09-07-2004 à 21:30:46
C'est koi exactement ce que tu veut virer dans ton exemple?
"%KeyList" et "%Reference" ?
la avec ton expression tu va supprimer tout ce qui commence par un %, ne contenant rien ou que des lettres (tu peux remplacer [A-Za-z] par \w et mettre le modfier i à la fin d'ailleurs), et finissant par un espace.
Et dans ton exemple il n'y a rien qui corresponde à ce motif
Marsh Posté le 10-07-2004 à 04:16:24
ReplyMarsh Posté le 11-07-2004 à 23:00:47
je veux effacer chaque mot qui commence par un %. Par exemple je veux effacer en entier %KeyList=[Port,Protocol,ServerName].
Je vais essayer vos solutions.
Merci de votre aide
Marsh Posté le 11-07-2004 à 23:02:45
bon bin tu veux pas le remplacer par un espace
alors c'est plutot
$foo =~ s/^%\w=.*$//g;
ca l'espace les lignes qui débute par %trucmachin=
Marsh Posté le 12-07-2004 à 00:06:24
bon j'ai testé mais ca marche pas
comprends pas ... c'est pourtant tout con ce que je veux faire ...
Marsh Posté le 12-07-2004 à 10:31:20
Un peu complexe
$text = s/%.*=\[.*\]/ /g
Plus simple, mais peut-être top simple pour que ça marche
$text = s/%.* / /g
Marsh Posté le 12-07-2004 à 15:38:43
la bonne réponse était :
$ligne =~ s/%\S*\s//g;
merci à tous.
Marsh Posté le 09-07-2004 à 16:26:44
Bonjour,
voici un bout de code en perl
j'aimerai remplacer les chaines %[du texte][un espace] par un espace ( en gros je veux les effacer de la phrase ).
J'ai donc fait cette regexp mais elle ne filtre rien ... qq'un voit il mon erreur ?
Merci d'avance pour vos réponses
Message édité par ishaor le 12-07-2004 à 15:39:26