|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : octobre 2007 Messages : 14 ![]() |
Hello,
Décidément, les regexp et moi, ca fait au moins 2 (ou 3 ou 4). Je recupère un texte dans lequel je veux remplacer un mot sauf si celui ci est dans une url. ex : remplacer "bleu" par "blanc" le bleu est une super couleur; le plâtre est bleu. un <a href="page_bleu.html">exemple ici</a> (ok, l'exemple est con mais peu importe Dans ce texte, je voudrais remplacer les 2 premier 'bleu' par 'blanc' mais pas celui du lien. j'ai fait des tests avec ca : http://gskinner.com/RegExr/ mais je n'arrive a rien de concluant Si qq1 a une idee... Chag |
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() Développeur Web Inscription : mars 2011 Messages : 399 ![]() |
Le plus simple et rapide serait :
ne prend "bleu" seulement avec un espace avant et un espace ou un point après. Tu peux le voir sur le site que tu... cites : http://regexr.com?2tdm6 Bien sûr, c'est plus simple et donc le moins sûr. Par exemple, ceci ne passe pas : Code :
le bleu est une super couleur; le plâtre est bleu. un <a href="page_bleu.html" class="button bleu overflow">exemple ici</a> Bien sûr, on pourrait complexifier le regex pour qu'il ne prenne pas les attributs et leurs valeurs mais encore une fois, les regex pour parser du HTML... non, faut éviter sauf si on est vraiment sûr de son code et de ce qui va se passer. (et encore). Le "mieux" (pour moi) serait de parser le HTML avec DOMDocument et de prendre que les valeurs des noeuds et de passer par un str_replace() tout facile par la suite
__________________
Membre de StackOverflow, je suis un fervant utilisateur de PHP et de jQuery. Après des études de graphisme, j'ai décidé de mélanger développement web et web design. J'ai ainsi donc créé mon site web mais aussi plusieurs projets personnels. Dans les plus aboutis, vous pourrez trouver dans mon labo et dans mon devblog, un raccourcisseur d'url, un bookmarklet pour envoyer l'url de la page actuelle vers votre email pour lire plus tard ou sauvegarder, mon générateur de template HTML5, etc... |
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : octobre 2007 Messages : 14 ![]() |
Yop,
Effectivement, je n'avais pas pensé a ca mais ca va pas coller. Si pour une raison ou une autre, j'ai un truc du genre <h3>bleu</h3>, ca va pas passer. Je pense qu'il doit y avoir une solution avec les regexp Merci en tout cas. |
|
|
00
|
|
|
#4 | ||
![]() ![]() Benjamin PREVOTArchitecte de système d'information Inscription : septembre 2004 Messages : 1 568 ![]() |
Salut,
Tu peux essayer quelque chose comme ça Code :
__________________
Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement. Albert EINSTEIN F.A.Q. : Java, PHP, (X)HTML / CSS N'oubliez pas de cliquer sur le bouton Résolu en bas de page quand vous avez obtenu une solution à votre problème |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com