regex pour rewrit accents et cactères interdits dans un url

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics


yule
WRInaute discret
WRInaute discret
 
Messages: 197
Inscription: 23 Juil 2004

regex pour rewrit accents et cactères interdits dans un url

Message le Dim Aoû 20, 2006 22:59

Bonjour,

Connaissez vous le regex utilisé sur dotclear qui permet pour le rewrinting de changer un terme comme celui-ci (ou un autre regex..)

Google Code Jam 2006 : c'est parti !

Par ceci

google-code-jam-2006-c-est-parti

-Donc apparement, il supprime(ou remplace par rien) les carctères interdits dans un url comme @*%&/ etc....
-Le majuscule passe en minuscule
- les espaces sont remplacés par un -
Etc...

Existe t'il un regex qui fasse tout ça (si seulement vous me répondrez peut-être... rire)

D'avance merci de vos tuyaux
Cordialement
Yule


david96
WRInaute passionné
WRInaute passionné
 
Messages: 1430
Inscription: 28 Aoû 2005

Message le Lun Aoû 21, 2006 0:05

En php ça donnerait ça :
Code: Tout sélectionner
$phrase="Google Code Jam 2006 : c'est parti";
$regex=preg_replace('!\'| !','-',htmlentities(strtolower($phrase)));
echo $regex;


obi
WRInaute discret
WRInaute discret
 
Messages: 238
Inscription: 26 Juil 2006

Message le Lun Aoû 21, 2006 9:00

Si je me souviens bien, DC remplace également les caractères accentuées par leur version sans accent.


yule
WRInaute discret
WRInaute discret
 
Messages: 197
Inscription: 23 Juil 2004

Message le Lun Aoû 21, 2006 9:09

obi a écrit:Si je me souviens bien, DC remplace également les caractères accentuées par leur version sans accent.


Merci David mais comme l'a dit obi.. il remplace (DC) les carcatères accentués

A+
Yule


obi
WRInaute discret
WRInaute discret
 
Messages: 238
Inscription: 26 Juil 2006

Message le Lun Aoû 21, 2006 9:18

Perso j'utilise ça:

Code: Tout sélectionner
function asHtmlId($txt) {
//switch accents to simpler text
$txt=strtr($txt,"éèëêàäâùüûöôïïüûç","eeeeaaauuuooiiuuc");
//replace non alpha-numerical chars sequences by -
$txt =  trim(preg_replace('@([^a-z|A-Z|0-9|-])+@', '-', strtolower($txt)), "-");
return preg_replace('@([-])+@', '-', $txt); //remove dashes nplications
}


yule
WRInaute discret
WRInaute discret
 
Messages: 197
Inscription: 23 Juil 2004

Message le Lun Aoû 21, 2006 10:05

Parfait Merci ! je vais tester tout ça

Cordialement
Yule


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités