|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre actif
![]() Inscription : juillet 2003 Messages : 295 ![]() |
Bonjour,
je galère depuis un moment avec mes expressions régulières. Je cherche à passer récupérer les éléments suivants : Voici ma chaine : Citation:
J'ai donc fait comme si cette chaine était la suivante : Citation:
Voici à quoi ressemble mon expression régulière : Code :
#<img([^>]+)src="([^>^"]+)MOTCLE([a-zA-Z]+)"([^/>]+)/>#Usi
Merci pour votre aide. |
||
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() ![]() Inscription : mars 2006 Messages : 1 989 ![]() |
Bonjour,
Tu peux nous donner ton code qui ne fonctionne pas (le remplacement) ? Parce qu'avec cette expression et ton exemple, les parties que tu veux récupérer le sont bien... |
|
|
00
|
|
|
#3 | ||
|
Membre actif
![]() Inscription : juillet 2003 Messages : 295 ![]() |
ok, alors voici mon code de remplacement :
Code :
Merci pour l'aide |
||
|
|
00
|
|
|
#4 | ||
|
Expert Confirmé
![]() ![]() Inscription : mars 2006 Messages : 1 989 ![]() |
Eh bien si j'exécute simplement :
Code :
|
||
|
|
00
|
|
|
#5 | |||
|
Membre actif
![]() Inscription : juillet 2003 Messages : 295 ![]() |
snif, moi pas.
en exécutant exactement ceci : Code :
Citation:
alors que j'aimerais : 1) : width="111" height="111" alt="xxx" 2) : images/imagre 3) : jpg (le point est dans le mot clé) 4) : (les autres attributs du noeud img) |
|||
|
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() ![]() Inscription : mars 2006 Messages : 1 989 ![]() |
Bizarre...
procédons par étapes : qu'est-ce que tu obtiens avec le même texte, et la regex '#<img(.*)src="(.*)MOTCLE.(.*)"(.*)/>#Usi' ? Si ça fonctionne, essaie avec '#<img([^>]+)src="(.*)MOTCLE.(.*)"(.*)/>#Usi' puis : '#<img([^>]+)src="([^">]*)MOTCLE.(.*)"(.*)/>#Usi' puis : '#<img([^>]+)src="([^">]*)MOTCLE.([^">]*)"(.*)/>#Usi' puis : '#<img([^>]+)src="([^">]*)MOTCLE.([^">]*)"([^>]*)/>#Usi' pour voir où ça bloque... |
|
|
00
|
|
|
#7 |
|
Membre actif
![]() Inscription : juillet 2003 Messages : 295 ![]() |
Merci pour ton aide et ta patience, maintenant cela fonctionne.
Le problème était tout autre : comme ma chaine de caractère source venait d'un text area, le texte était protégé. PAr exemple les caractères " etaient des \" anisi l'expression régulière ne fonctionnait que dans l'environement de test et non pas la ou elle devrait. J'y suis donc allés pas à pas dans le test pour voir que tout fonctionnait afin de recommencer ceci dans la chaine de traitement ou rien ne fonctionnait. J'ai donc utilisé la fonction stripslashes pour enlevé les antislash en trop. J'ai perdu beaucoup de cheveux dans l'affaire et j'espere ne pas t'en avoir fait trop perdre Merci encore |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com