Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/02/2011, 13h58   #1
Invité de passage
 
Inscription : décembre 2010
Messages : 24
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 24
Points : 1
Points : 1
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 :
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;
					} 
				}
		}
 
	}
pixworld2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/02/2011, 14h07   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 101
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 101
Points : 8 466
Points : 8 466
ta chaine est en utf-8 ?
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h16.


 
 
 
 
Partenaires

Hébergement Web