par
enneite » 26 avr. 2010, 17:02
j'ai une petite question
Et je sais que les pros du PHP et des exp reg vont pouvoir me donner une réponse :
Le but :
supprimer les "s" en fin de mots dans des chaines composées de caractères alphabetiques minuscules et d'espace
Voici mon code :
$mots_cles="assureurs assurances services courtiers démarcheurs démarcheuses";
echo $mots_cles."<br>";
//exp reg retirant les lettres s en fin de mots de plus de 4 lettre (suppressions des pluriels)
//mot de fin (ou un seul mots)
$mots_cles=preg_replace("/([a-z]{4,30})s$/","$1",$mots_cles);
//mot du debut
$mots_cles=preg_replace("/^([a-z]{4,30})s([ ]{1})/","$1$2",$mots_cles);
//mots du milieu
$mots_cles=preg_replace("/([ ]{1})([a-z]{4,30})s([ ]{1})/","$1$2$3",$mots_cles);
echo $mots_cles;
Ce qui donne
assureurs assurances services courtiers démarcheurs démarcheuses
assureur assurance service
s courtier démarcheur
s démarcheuse
Alors que son analogue Javascript fonctionne :
Code : Tout sélectionner
var mots_cles="assureurs assurances services courtiers démarcheurs démarcheuses";
document.write(mots_cles+"<br>");
//exp reg retirant les lettres s en fin de mots de plus de 4 lettre (suppressions des pluriels)
//mot de fin (ou un seul mots)
mots_cles=mots_cles.replace(/([a-z]{4,30})s/g,"$1",mots_cles);
//mot du debut
mots_cles=mots_cles.replace(/^([a-z]{4,30})s([ ]{1})/g,"$1$2",mots_cles);
//mot du milieu
mots_cles=mots_cles.replace(/([ ]{1})([a-z]{4,30})s([ ]{1})/g,"$1$2$3",mots_cles);
//mots_cles = transforme_mots_cles_pour_recherche_annonce(mots_cles);
document.write(mots_cles+"<br>");
assureurs assurances services courtiers démarcheurs démarcheuses
assureur assurance service courtier démarcheur démarcheuse
Si vous voyez le problème, votre aide est la bien venue.
j'ai une petite question
Et je sais que les pros du PHP et des exp reg vont pouvoir me donner une réponse :
[b]Le but :[/b]
supprimer les "s" en fin de mots dans des chaines composées de caractères alphabetiques minuscules et d'espace
Voici mon code :
[php]
$mots_cles="assureurs assurances services courtiers démarcheurs démarcheuses";
echo $mots_cles."<br>";
//exp reg retirant les lettres s en fin de mots de plus de 4 lettre (suppressions des pluriels)
//mot de fin (ou un seul mots)
$mots_cles=preg_replace("/([a-z]{4,30})s$/","$1",$mots_cles);
//mot du debut
$mots_cles=preg_replace("/^([a-z]{4,30})s([ ]{1})/","$1$2",$mots_cles);
//mots du milieu
$mots_cles=preg_replace("/([ ]{1})([a-z]{4,30})s([ ]{1})/","$1$2$3",$mots_cles);
echo $mots_cles;
[/php]
Ce qui donne
assureurs assurances services courtiers démarcheurs démarcheuses
assureur assurance service[b]s[/b] courtier démarcheur[b]s[/b] démarcheuse
Alors que son analogue Javascript fonctionne :
[code]var mots_cles="assureurs assurances services courtiers démarcheurs démarcheuses";
document.write(mots_cles+"<br>");
//exp reg retirant les lettres s en fin de mots de plus de 4 lettre (suppressions des pluriels)
//mot de fin (ou un seul mots)
mots_cles=mots_cles.replace(/([a-z]{4,30})s/g,"$1",mots_cles);
//mot du debut
mots_cles=mots_cles.replace(/^([a-z]{4,30})s([ ]{1})/g,"$1$2",mots_cles);
//mot du milieu
mots_cles=mots_cles.replace(/([ ]{1})([a-z]{4,30})s([ ]{1})/g,"$1$2$3",mots_cles);
//mots_cles = transforme_mots_cles_pour_recherche_annonce(mots_cles);
document.write(mots_cles+"<br>");[/code]
assureurs assurances services courtiers démarcheurs démarcheuses
assureur assurance service courtier démarcheur démarcheuse
Si vous voyez le problème, votre aide est la bien venue.