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

PHP & Base de données Discussion :

preg_match erreur découpage dernière lettre accentuée


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 24
    Points : 8
    Points
    8
    Par défaut preg_match erreur découpage dernière lettre accentuée
    bonjour,

    j'ai réalisé la fonction suivante pour découper des noms et prénoms.
    Seulement, je rencontre un léger dysfonctionnement sur les prénoms terminants par une lettre accentuée :
    Hervé
    André
    René

    Sauriez-vous me dire comment résoudre ceci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    	function extraire_nom_prenom($string) {
    		//Recherche NOM Prénom
    		if (preg_match("#((?:\b[[:upper:]'\s-]+\b)+)\s+((?:\b[[:upper:]]?[\x6A\x6B\x6C\x6D\x6E\x6F\x61\x62\x63\x64\x65\x66\x67\x68\x69\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7A\x2D\x82\xE9\xE0\xE7\xE8\xEF\xEE\xEB'\s-]+\b)+)#", $string, $m)) 
    		{
    			$resultat= array("nom"=>$m[1],"prenom"=>$m[2]);
    			$resultat_liste=array($resultat);
    			return $resultat_liste;		
    		}
    		else {
    				//Recherche PRENOM NOM
    				if (preg_match("#((?:\b[[:upper:]'\s-]+\b)+)+((?:\b[[:upper:]'\s-]+\b)+)#", $string, $m)) 						 
    				{
    							$resultat= array("nom"=>$m[2],"prenom"=>$m[1]);
    							$resultat_liste=array($resultat);
    							return $resultat_liste;
    				}	else 
    				{
    					//Recherche Prénom NOM
    					if (preg_match("#((?:\b[[:upper:]]?[\x6A\x6B\x6C\x6D\x6E\x6F\x61\x62\x63\x64\x65\x66\x67\x68\x69\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7A\x2D\x82\xE9\xE0\xE7\xE8\xEF\xEE\xEB'\s-]+\b)+)+((?:\b[[:upper:]]?[\x6A\x6B\x6C\x6D\x6E\x6F\x61\x62\x63\x64\x65\x66\x67\x68\x69\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7A\x2D\x82\xE9\xE0\xE7\xE8\xEF\xEE\xEB'\s-]+\b)+)#", $string, $m)) 
    					{	
    						$resultat= array("nom"=>$m[2],"prenom"=>$m[1]);
    						$resultat_liste=array($resultat);
    						return $resultat_liste;
    					} 
    				}
    		}
     
    	}

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    ta chaine est en utf-8 ?

Discussions similaires

  1. Erreur sqlalchemy lettre accentuée
    Par LinC49 dans le forum Bibliothèques tierces
    Réponses: 4
    Dernier message: 05/06/2012, 08h30
  2. Réponses: 6
    Dernier message: 12/12/2006, 11h27
  3. Récupération des lettres accentuées
    Par troumad dans le forum Installation
    Réponses: 5
    Dernier message: 15/11/2005, 21h28
  4. HashCode avec lettres accentuées...
    Par Kineas dans le forum C++
    Réponses: 4
    Dernier message: 08/04/2005, 10h54
  5. Comment entrer des lettres accentuées sous postgresql ?
    Par Chihuahua dans le forum Requêtes
    Réponses: 11
    Dernier message: 28/08/2003, 08h04

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