IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

eregi_replace problème de recherche pour remplacement


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 20
    Par défaut eregi_replace problème de recherche pour remplacement
    salut à tous
    je cherche le moyen de remplacer un texte dans une document html par un autre
    ce texte se situe en dehors de balise html

    cependant, il se peut que ce mot se retrouve aussi dans les balises html

    exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <td width=690 valign=top style='width:517.2pt;border:double black 1.5pt;
      background:#FFFF99;padding:0cm 5.4pt 0cm 5.4pt'>
      <p class=MsoNormal><a name=WORD><b style='mso-bidi-font-weight:normal'><span
      lang=EN-GB style='font-size:14.0pt;mso-ansi-language:EN-GB'>WORD</span></b></a><b
      style='mso-bidi-font-weight:normal'><span lang=EN-GB style='mso-ansi-language:
      EN-GB'> </span></b><i style='mso-bidi-font-style:normal'><span
      style='font-size:10.0pt'>35858</span></i><b style='mso-bidi-font-weight:normal'><span
      lang=EN-GB style='mso-ansi-language:EN-GB'><o:p></o:p></span></b></p>
      </td>
    je souhaite remplacer le mot word hors balise par <font color:red>word</font>

    de plus il faudrait pouvoir colorer aussi les mots du genre DWORD mais seulement la partie WOrd

    je test avec les eregi_replace ça fonctionne sauf que soit le DWORD et remplacer par word sinon c'est les mots word qui sont remplacés dans les balises
    si quelqu'un a une solution je suis preneur

    merci d'avance

  2. #2
    Membre émérite
    Profil pro
    Assistant recherche bioinformatique
    Inscrit en
    Novembre 2007
    Messages
    877
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Assistant recherche bioinformatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 877
    Par défaut
    Bonjour,
    Tu peux essayer avec cela :
    La condition est que 1 paire de balise doit toujours preceder et suivre word.
    En d'autre terme, word ne peux pas se trouver au tout debut d'une page et a la toute fin d'une page.

    Il est possible de traiter aussi ces2 cas en cherchant un peu...

    Z.

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 661
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $reg='#((?P<mot>word).*<(\w)[^>]*>[^>]*?)|([^\<]*</(\w)[^>]*>.*(?P<mot>word))#';
    faudrait que je teste ça plus a fond au bureau lundi,
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Membre Expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    J'y vais de mon essai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $reg = '/( (?> >\s*) ) (\b\w*WORD\b) (?! [^<>]*>)/xms';
    print_r (preg_replace($reg, '$1<font color=red>$2</font>', $str));

Discussions similaires

  1. [Toutes versions] problème de macro pour remplacement
    Par Lady5 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/12/2011, 12h24
  2. problème avec "rechercher et remplacer"
    Par Edward Bunzl dans le forum Word
    Réponses: 2
    Dernier message: 16/05/2010, 16h12
  3. Problème avec replaceAll pour remplacer un slash
    Par restricteur dans le forum Langage
    Réponses: 2
    Dernier message: 18/09/2007, 11h12
  4. Recherche méthode pour remplacer caracteres illegaux
    Par Attila50 dans le forum Général Java
    Réponses: 19
    Dernier message: 20/12/2006, 17h13
  5. [VBA-E] rechercher une ligne pour remplacer?
    Par zouille dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 31/12/2005, 10h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo