Regexp qui devrait matcher plus d'une seule fois - Perl - Programmation
Marsh Posté le 20-02-2008 à 16:49:29
Tout simplement parce que ton if() ne traite que la première occurrence trouvée.
Fais plutôt :
Code :
|
Marsh Posté le 20-02-2008 à 17:01:52
han ok merci
ça avance tant que ça matche en gros si je comprends bien
Marsh Posté le 20-02-2008 à 17:11:15
Autant y aller franchement dans la regex incompréhensible non?
Code : |
Marsh Posté le 20-02-2008 à 17:12:23
hum il matche un peu trop je crois là
Code :
|
et ça sort tout ça :
match |
Marsh Posté le 20-02-2008 à 17:38:57
anapajari a écrit : Autant y aller franchement dans la regex incompréhensible non?
|
merci ça marche nikel
il y a plus simple tu crois ?
Marsh Posté le 20-02-2008 à 18:03:20
bon en fait ça ne marche que dans ce cas particulier
je cherche tout simplement à supprimer les balises IMG ou URL/IMG imbriquées, mais uniquement dans les quotes
vous aurez compris que c'est pour faire comme sur le forum hardware, éviter d'avoir les images dans les quotes
Marsh Posté le 20-02-2008 à 18:26:12
le premier \s+ devrait être un \s*
De la même façon, il doit en manquer entre url et img et pareil sur les balises fermantes.
Montre un exemple "qui marche pas" stp.
Marsh Posté le 20-02-2008 à 20:26:01
Bonjour,
Pour la correction avec le while
Citation :
|
L'erreur vient du $_, il vaut utiliser $1.
Sinon, quelques principes que j'applique :
donc pour moi, la première regexp devrait s'écrire
Code :
|
et donc tout est contenu dans $1...
Ensuite la 2ème regexp ne match que les [url...][img]...[/img][/url]. Donc si tu souhaite aussi récupérer les [img][/img] seules ça ne marchera pas...
Donc, tu pourrais faire qqch du style
Code :
|
Le seul truc que j'ai pas compris : tu veux virer le quote complet ou juste les liens/images dans les quotes?
Marsh Posté le 21-02-2008 à 09:49:07
anapajari a écrit : le premier \s+ devrait être un \s* |
par exemple 2 liens/images dans un même quote, ça merdouille
dreameddeath : je veux virer les images qui se trouvent dans des quotes
comme sur le forum en fait
mais il y a les cas avec balise img simple et balises url et img imbriquées
Marsh Posté le 22-02-2008 à 22:49:42
Tu peux essayer qqch du style :
Code :
|
Marsh Posté le 26-02-2008 à 11:39:56
avec le texte suivant :
[quote author=Skurpit link=topic=1789.msg130897#msg130897 date=1203505782] |
$_ contient ça :
[URL=http://imageshack.us][IMG]http://img405.imageshack.us/img405/7328/sanstitre3.jpg[/img][/URL] |
Marsh Posté le 28-02-2008 à 01:06:22
Bon j'ai corrigé pas mal de choses et voici un truc qui marche pas mal
Code :
|
ça remplace les [url][img]tutu[/img][/url] par tutu
voilà voilà
Marsh Posté le 28-02-2008 à 10:51:40
un grand merci ça à l'air de fonctionner nikel !
Marsh Posté le 20-02-2008 à 15:28:42
Bonjour,
Juste pour savoir pourquoi ma regexp ne matche qu'une seule fois, alors qu'elle devrait matcher 2 fois ??
la chaîne :
[quote author=Skurpit link=topic=1789.msg130897#msg130897 date=1203505782]
[URL=http://imageshack.us][IMG]http://img405.imageshack.us/img405/7328/2tw5.jpg[/img][/URL]
[/quote]
[URL=http://imageshack.us][IMG]http://img405.imageshack.us/img405/7328/2tw5.jpg[/img][/URL][quote author=Skurpit link=topic=1789.msg130897#msg130897 date=1203505782]
[URL=http://imageshack.us][IMG]http://img405.imageshack.us/img405/7328/2tw5.jpg[/img][/URL]
[/quote]
[URL=http://imageshack.us][IMG]http://img405.imageshack.us/img405/7328/2tw5.jpg[/img][/URL]
la regexp :
merci
---------------
:: Light is Right ::