Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1630 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Remplacer "es" à la fin d'un mot par e

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Remplacer "es" à la fin d'un mot par e

n°747478
kaiska
Posté le 01-06-2004 à 15:39:57  profilanswer
 

Bonjour,  
Je cherche à faire quelque chose d'assez simple mais je n'y arrive malheureusment pas. J'ai une chaine de caractéres avec des mots qui finissent par "es", et j'aimerais remplacer ces "es" par des "e".
 
exemple :
 
remplacer "je cherche des olives ou des cerises"
par       "je cherche des olive ou des cerise"
 
Quelqu'un aurais une idée ?
 
Je n'y arrive pas avec :


eregi_replace('es\b', 'e', $machaine);

 
 
Voilà merci d'avance d'avance si vous avez une petite astuce !

mood
Publicité
Posté le 01-06-2004 à 15:39:57  profilanswer
 

n°747547
Berceker U​nited
PSN : berceker_united
Posté le 01-06-2004 à 16:09:51  profilanswer
 

echo str_replace("es","e",$machaine);

n°747564
Fabien
Vive la super 5 !
Posté le 01-06-2004 à 16:14:23  profilanswer
 

berceker united a écrit :

echo str_replace("es","e",$machaine);

il a dit a la FIN d'un mot.


---------------
Découvre le HFRcoin ✈ - smilies
n°747574
skeye
Posté le 01-06-2004 à 16:17:03  profilanswer
 

kaiska a écrit :


remplacer "je cherche des olives ou des cerises"
par       "je cherche des olive ou des cerise"


s'il remplace pas "des" par "de", on est mal barrés...:whistle:

n°747585
Berceker U​nited
PSN : berceker_united
Posté le 01-06-2004 à 16:19:06  profilanswer
 

Solution 1 :
echo str_replace("es ","e",$machaine); //Mode barbarian's
 
solution 2 :
il découpe ça chaine "array = explode(' ', $mot);" pour le placer dans un tableau apres il fait un str_replace sur chaque élément de sont tableau. Il reforme ça chaine a partir du tableau "string = implode(' ', $array);"
//mode bo gosse !


Message édité par Berceker United le 01-06-2004 à 16:19:33
n°747600
Fabien
Vive la super 5 !
Posté le 01-06-2004 à 16:24:45  profilanswer
 

berceker united a écrit :

Solution 1 :
echo str_replace("es ","e",$machaine); //Mode barbarian's
 
solution 2 :
il découpe ça chaine "array = explode(' ', $mot);" pour le placer dans un tableau apres il fait un str_replace sur chaque élément de sont tableau. Il reforme ça chaine a partir du tableau "string = implode(' ', $array);"
//mode bo gosse !

lol, ca donne le meme resultat, et en plus ca remplace aussi bien au debut , au milieu qu'a la fin du mot. alors que lui il demande qu'a la fin :D
 
le seul moyen c'est les expression reguliere :o


Message édité par Fabien le 01-06-2004 à 16:25:05

---------------
Découvre le HFRcoin ✈ - smilies
n°747611
Berceker U​nited
PSN : berceker_united
Posté le 01-06-2004 à 16:32:53  profilanswer
 

non la premiere solution j'ai placer un espace "es " forcement ça va sortir la fin des mots.

n°747624
Fabien
Vive la super 5 !
Posté le 01-06-2004 à 16:40:21  profilanswer
 

berceker united a écrit :

non la premiere solution j'ai placer un espace "es " forcement ça va sortir la fin des mots.

j'avais pas vu, mais tu oublie les retours a la ligne, le fin de ligne...


Message édité par Fabien le 01-06-2004 à 16:40:30

---------------
Découvre le HFRcoin ✈ - smilies
n°747636
Berceker U​nited
PSN : berceker_united
Posté le 01-06-2004 à 16:44:08  profilanswer
 

Fabien a écrit :

j'avais pas vu, mais tu oublie les retours a la ligne, le fin de ligne...


s'il y en a il la traite en deux fois. "es " et "es".chr(13) ou 10.


Message édité par Berceker United le 01-06-2004 à 16:44:41
n°747642
Ummon
Posté le 01-06-2004 à 16:46:43  profilanswer
 

voila :

<?php
$chaine = "je cherche des olives ou des cerises sur les arbres";
echo preg_replace('/es\b/', 'e', $chaine);
echo '<br />';
echo preg_replace('/(?<!\s(d|l))es\b/', 'e', $chaine);
?>


 
La deuxième version épargne les 'des' et 'les', c'est juste un exemple.
Cela affiche donc :

je cherche de olive ou de cerise sur le arbre
je cherche des olive ou des cerise sur les arbre


mood
Publicité
Posté le 01-06-2004 à 16:46:43  profilanswer
 

n°747646
Berceker U​nited
PSN : berceker_united
Posté le 01-06-2004 à 16:51:39  profilanswer
 

Au faite, tu veux faire un générateur de faute ? :??:

n°747672
Ummon
Posté le 01-06-2004 à 17:05:45  profilanswer
 

Bein ... "je cherche de olive" est plus juste que "je cherche des olive" ?
j'ai bien mit "c'est juste un exemple".
 
De toute façon mettre une phrase du pluriel au singulier n'est pas facile, il y a beaucoup de cas spéciaux !


Message édité par Ummon le 01-06-2004 à 17:10:18
n°748512
kaiska
Posté le 02-06-2004 à 09:59:25  profilanswer
 

Ummon a écrit :

voila :

<?php
$chaine = "je cherche des olives ou des cerises sur les arbres";
echo preg_replace('/es\b/', 'e', $chaine);
echo '<br />';
echo preg_replace('/(?<!\s(d|l))es\b/', 'e', $chaine);
?>


 
La deuxième version épargne les 'des' et 'les', c'est juste un exemple.
Cela affiche donc :

je cherche de olive ou de cerise sur le arbre
je cherche des olive ou des cerise sur les arbre




 
Parfait merci beaucoup, c'est exactement la première expression que je cherchais.
Merci Merci Merci !:)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Remplacer "es" à la fin d'un mot par e

 

Sujets relatifs
rechercher et remplacer dans une QString[batch] remplacer un fichier par une version plus recente (date)
[Java] text qu'on veut pas voir : remplacer la saisie par astérisques?remplacer les submit par des images
Connaissez vous un moyen de remplacer lex/yaccremplacer tous les accents d'un fichier donné
(C) Remplacer des espaces par des underscores[Java] Remplacer une classe pdt l'execution
remplacer une checkbox par une image...remplacer dans un fichier texte
Plus de sujets relatifs à : Remplacer "es" à la fin d'un mot par e


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR