[RegExp] Normalisation

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RegExp] Normalisation

par ramy » 28 sept. 2006, 10:59

Merci beaucoup de votre aide ^^

par titerm » 28 sept. 2006, 09:13

regle 1, effectivement, regexp,

converti en minuscule et suprime tout ce qui n'est pas alpha numérique ou espacement (space tabulation )
$string = preg_replace('/[^\w\s]/','',strtolower($string));
ensuite, pour la première lettre de chaque mot en majuscule.
$string = ucwords($string) 

par Cyrano » 28 sept. 2006, 07:58

Pour la premiere lettre en majuscule, utilise ucfirst() : tu peux donc faire :
<?php
//...
$chaine = ucfirst(strtolower($chaine));
//...
?>

[RegExp] Normalisation

par ramy » 28 sept. 2006, 01:07

Bonjour,
je cherche le moyen de normaliser une chaine caracteres quelconque suivant ces regles :
+ seulement des minuscules, des chiffres ou des espaces
+ les premieres lettres de chaque mot en majuscule

La ligne : $string = preg_replace('![^a-z0-9]!','',strtolower($string)); supprime les caracteres alors que je voudrais les 'transformer' : par exemple les é et è en e...

De plus, il y a-t-il une solution pour remplacer toutes les premiere lettres par leur majuscule et ne rien faire s'il s'agit d'un chiffre.

Je vais vous donner un exemple afin de bien vous reprensenter ce que je veux faire :
il été_10.p'tits-navires => Il Ete 10 Ptits Navires

Merci de votre aide