expression regulière d'un nom propre

  • Auteur de la discussion Auteur de la discussion r23o
  • Date de début Date de début
WRInaute discret
Quelqu'un pourrait t'il me donner l'expression regulière pour un nom propre :
c'est à dire :
contenant des lettres (eventuelment des chiffres), le trait de soulignement : ([a-zA-Z0-9-])

jusque là ça va...

Mais comment ecrire l'expression reguliere si le nom contient aussi des lettres accentuées exemple "gaëtan" ou un point exemple "PERRIN F.Paolina" ou bien un autre caractere que j'aurais oublier de citer.

Voir cette page pour mieux comprendre mon probleme.
http://www.alvoltaire.com/joueurs.php

je n'arrive pas à faire du rewriting quand les prenoms contiennent d'autres caracteres que ([a-zA-Z0-9-]).


Merci de votre aide
 
WRInaute passionné
salut r23o,

Il faudrait peut-être prendre le problème à l'envers et faire une regex avec les caractères qui ne sont pas contenus dans les noms.

Tu peux utiliser les classes posixpour cela, par exemple la classe [[:ctrl:]]

Dan
 
WRInaute discret
oui tu as raison il serait plus intelligent par exemple de considerer un nom propre comme chaine de charactere ne contenant (par exemple) pas de trait de soulignement...

pourrais tu m'écrire le code pour mon fichier .httpaccess, si ça t'embête pas, j'arrive pas à voir en quoi posix peut m'aider dans ce cadre là (en fait la classe [[:ctrl:]] n'est pas documenté dans le lien que tu m'as passé, et je dois avouer que je ne maitrise pas du tout les regex)....

tu peux corriger corrige celui là ( c'est celui que j'utilise en ce moment):

RewriteRule ^([a-zA-Z0-9-]+)_([a-zA-Z0-9-]+)_([a-zA-Z0-9-]+)_([a-zA-Z0-9]+)\.html$ fiche.php?nom=$1&prenom=$2&saison=$3&categorie=$4 [L]


en fait comme tu vois j'utilise des caractères de soulignement pour separer mes variables d'expression regulière. (je pense que ce n'est pas trés courant le caractère de soulignement dans les noms propres...)


merci bcp pour ton aide
 
WRInaute discret
bon j'ai essayé ceci :

RewriteRule ^([^_]+)_([^_]+)_([^_]+)_([^_]+)\.html$ fiche.php?nom=$1&prenom=$2&saison=$3&categorie=$4 [L]



ça marche nickel pour le rewriting à part que les variables transmises au fichier fiche.php et contenant un caractere accentué, présentent des modifications un peu inattendues

Mikaël devient Mikaêl par exemple

voir ce lien :
http://alvoltaire.com/GRANADOS_Mikaêl_saison20022003_benjamin.html

qu'est ce qui s'est passé ? 8O
 
WRInaute discret
Non je ne crois pas que ce soit ça. Car comme toi j'ai windows xp pro et ie6.

En fait je crois que tu as dù taper l'url longue (avec tous les parametres) c'est pour cela que ça s'est affiché correctement chez toi (chez moi aussi ça marche). Mais si tu tapes l'adresse rewrited (c'est à dire celle qui fini par .html) ça ne marche pas !!!
http://alvoltaire.com/GRANADOS_Mikaêl_saison20022003_benjamin.html

Je pense que c'est un défaut du module apache qui converti mal les caracteres accentuées lors d'un traitement d'url rewriting.


http://alvoltaire.com/joueurs.php (cherche mikaël dans la categorie benjamin)

C bizzare en tout cas. :?
 
WRInaute passionné
Je confirme qu'en cliquant sur le lien html http://alvoltaire.com/GRANADOS_Mikaêl_saison20022003_benjamin.html cela s'affiche correctement chez moi (si Mikaêl s'affiche normalement avec & ecirc; ) :roll:
L'encodage I.E. est positionné à "auto select" et il trouve bien "western european (ISO)"

Si tu ne me crois pas, je t'envoie une copie d'écran :lol:

Dan

PS: dans http://alvoltaire.com/joueurs.php, le nom s'affiche bien Mikaêl , c'est pareil ! :lol:
 
WRInaute discret
bon ok je te crois, d'ailleurs je n'ai pas "western european (ISO)" sur mon browser (c surement pour ça)...
voir cette capture =>http://r23o.free.fr/images/codage.jpg


mais je ne pense tjrs pas que ce soit qu'un probleme d'affichage.
parce que dans ma base de donnée il a bien été rentré Mikaêl au lieu de Mikaël et c'est embêtant car je n'arrive plus à faire des comparaison entre les champs "prénom" de mes differentes tables (pour afficher des statisqtiques par exemple).


donc je soutiens toujours la thése du defaut d'appache sur les caractères accentuées pour ce qui est de l'url rewriting...
 
WRInaute discret
mais sinon j've bien voir une capture d'ecran...

Pas que je te crois pas que ça s'affiche correctement mais pour savoir si la table statisques du joueur Mikaël s'affiche aussi...
 
WRInaute passionné
r23o a dit:
mais sinon j've bien voir une capture d'ecran...

Pas que je te crois pas que ça s'affiche correctement mais pour savoir si la table statisques du joueur Mikaël s'affiche aussi...
La voilà: immo.wildcroft.com/test/granados.jpg

:wink: Tu me croyais, mais tu préfères voir par toi même.... on ne t'appelle pas Thomas, des fois ? :lol:
 
WRInaute discret
bon ok je comprends mieux.

C'est mon browser qui merde.
J'ai autant d'enregistrement dans ma base de donnée pour le prenom mikaël que le nbre de fois où j'ai essayé de changer le codage.
-http://r23o.free.fr/images/sql.jpg

En fait c'est mon browser (ie6) qui envoie n'importe quoi au serveur apache d'ovh qui forcement aprés rewriting m'envoie des resultats bizzare.
-http://r23o.free.fr/images/mikael.jpg
Mais ce que je n'explique tjrs pas c'est le fait que ça s'affiche correctement chez moi lorsque je ne passe par l'url rewriting :
-http://r23o.free.fr/images/mikaphp.jpg

désolé et merci pour tout...
 
Discussions similaires
Haut