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 :

Remplacer dans une chaine de caractères uniquement si.. [PHP 7]


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    HobbyWeb
    Inscrit en
    Janvier 2005
    Messages
    183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : HobbyWeb

    Informations forums :
    Inscription : Janvier 2005
    Messages : 183
    Points : 102
    Points
    102
    Par défaut Remplacer dans une chaine de caractères uniquement si..
    Bonjour,

    Sur un moteur de recherche, j'accepte au minimum 4 caractères sur un terme pour qu'il soit pris en compte. N'ayant pas réfléchi avant mon acte... J'avais ceci (ci-dessous) pour remplacer des termes de 4 caractères que je ne souhaitais pas qu'ils soient pris en compte

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <?php
            $keywordsy = str_replace("pour"," ",$keywordsy);
    	$keywordsy = str_replace("nous"," ",$keywordsy);
    	$keywordsy = str_replace("quel"," ",$keywordsy);
    	$keywordsy = str_replace("cela"," ",$keywordsy);
    	$keywordsy = str_replace("ceci"," ",$keywordsy);
    	$keywordsy = str_replace("quoi"," ",$keywordsy);
    	$keywordsy = str_replace("leur"," ",$keywordsy);
    	$keywordsy = str_replace("dans"," ",$keywordsy);
    	$keywordsy = str_replace("cette"," ",$keywordsy);
    ?>
    Hors, en utilisant par ex ceci comme terme couleur, je me prive de ce terme, car il va me supprimer couleur ==> cou , dès lors, mon terme est inutilisable qui en plus, fera moins de 4 caractères et ne sera pas pris en compte dans ma recherche...

    Comment supprimer par ex que le mot exact leur (adjectif) et pas leur qui pourrait se trouver dans un nom comme ==> Couleur, valeur, pilleur etc... idem pour mes autres termes ci-dessus.

    Merci pour vos lumières
    Yule

    EDIT : peut être ainsi ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <?php
    $keywordsy = preg_replace('/\bleur\b/', '', $keywordsy); 
    ?>

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 12
    Points : 19
    Points
    19
    Par défaut
    salut
    ce serait pas plus simple de mettre tous les termes de la requete dans un array et de supprimer ceux dont le nb de caractères <5 ?

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 23/12/2013, 17h40
  2. [RegEx] remplacer dans une chaine de caractère (cas spécial)
    Par etage92 dans le forum Langage
    Réponses: 8
    Dernier message: 04/07/2008, 19h24
  3. remplacer les cotes dans une chaine de caractère
    Par zut94 dans le forum Langage
    Réponses: 3
    Dernier message: 30/08/2006, 18h38
  4. Réponses: 2
    Dernier message: 05/01/2006, 14h15
  5. Remplacer dans une chaine de caractères à partir de la fin
    Par daddyel dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 02/01/2006, 12h31

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