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 :

Recherche de mot(s) dans une phrase


Sujet :

Langage PHP

  1. #1
    Membre actif
    Inscrit en
    Février 2009
    Messages
    626
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 626
    Points : 237
    Points
    237
    Par défaut Recherche de mot(s) dans une phrase
    Bonjour,

    Dans une phrase peut se trouver une ou plusieurs fois un mot, en minuscule ou commençant par une majuscule ou encore entièrement en majuscule,
    je cherche à réafficher la phrase sans changer l'origine du texte (majuscule/minuscule/etc.) tout en ajoutant une balise <span class="surligner">mot</span> à chaque fois qu'un mot est trouvé, et surligner ces mots à l'aide d'une class css contenant un backgroud-color

    Exemple :

    Mot recherche => « Soleil » (ici le mot saisie commence par une majuscule)
    Phrase => "Aujourd'hui il y a un peu de soleil, le SOLEIL c'est la vie comme disent certains, vive le Soleil et vivement l'été !"

    Le problème avec le code ci-dessous, c'est que l'état d'origine du mot (majuscule/minuscule..) est remplacé par le mot recherché et non par le mot tel qu'il était écrit dans le texte à l'origine...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $search = $_GET["search"];
    $field["fld_texte"] = str_ireplace($search, '<span class="surligner">'. $search .'</span>', $field["fld_texte"]);
    Merci d'avance pour votre aide, je ne sais pas trop comme m'y prendre..

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $phrase =  "Aujourd'hui il y a un peu de soleil, le SOLEIL c'est la vie comme disent certains, vive le Soleil et vivement l'été !";
    echo preg_replace("/\b(soleil)\b/i", '<span class="surligner">$1</span>', $phrase);
    A+

  3. #3
    Membre actif
    Inscrit en
    Février 2009
    Messages
    626
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 626
    Points : 237
    Points
    237
    Par défaut
    Merci, c'est exactement ce que je cherchais à faire mais j'imaginais une solution plus complexe...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [RegEx] preg_match : recherche d´un mot entier dans une chaine
    Par iOops dans le forum Langage
    Réponses: 7
    Dernier message: 04/04/2011, 16h34
  2. [AC-2003] Tester l'existence de mot majuscule dans une phrase
    Par Daniel MOREAU dans le forum VBA Access
    Réponses: 3
    Dernier message: 27/04/2010, 16h57
  3. Recherche par mot clef dans une feuille excel.
    Par takamo dans le forum Excel
    Réponses: 12
    Dernier message: 18/06/2008, 15h35
  4. Recherche de mot précis dans une suite de mot
    Par Adrien38240 dans le forum C
    Réponses: 4
    Dernier message: 02/06/2008, 12h25
  5. Recherche par mot clé dans une base de donnée
    Par sihamsisim dans le forum ASP
    Réponses: 1
    Dernier message: 24/04/2008, 21h59

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