REGEX Transformation d'url.

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics


mustru
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 156
Inscription: Lun Juil 10, 2006 17:42

REGEX Transformation d'url.

Message le Sam Mai 17, 2008 10:44

Bonjour,

Je suis vraiment un novice en REGEX et malgré toute la bonne volonté que j'essai d'avoir je n'arrive pas a faire une chose que je pense pourtant simple :

- Transformer une URL de telle sorte :

Exemple :
depart : http://www.bestnet.fr
arrivé : bestnet

Je pensai le faire avec ereg_replace, mais je n'y arrive vraiment pas, un peu d'aide serait vraiment la bienvenue.

Merci d'avance.


medium69
WRInaute accro
WRInaute accro
 
Messages: 2164
Inscription: Sam Mai 07, 2005 9:36

Re: REGEX Transformation d'url.

Message le Sam Mai 17, 2008 11:20

mustru a écrit:Bonjour,

Je suis vraiment un novice en REGEX et malgré toute la bonne volonté que j'essai d'avoir je n'arrive pas a faire une chose que je pense pourtant simple :

- Transformer une URL de telle sorte :

Exemple :
depart : http://www.bestnet.fr
arrivé : bestnet

Je pensai le faire avec ereg_replace, mais je n'y arrive vraiment pas, un peu d'aide serait vraiment la bienvenue.

Merci d'avance.


Code: Tout sélectionner
$value = 'http://www.bestnet.fr';
$value = parse_url($value, PHP_URL_HOST); // Au cas ou l'url en question va plus loin que le domaine... (http://www.bestnet.fr/dossier/page.html)
preg_replace('#http://(?:www\.)?([^.]+)\.(?:[a-z]{2,3})#U', '$1', $value); // Avec ou sans www


mustru
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 156
Inscription: Lun Juil 10, 2006 17:42

Message le Sam Mai 17, 2008 11:28

Merci beaucoup mais cela me renvoi : "www.bestnet.fr" et non "bestnet"...


medium69
WRInaute accro
WRInaute accro
 
Messages: 2164
Inscription: Sam Mai 07, 2005 9:36

Message le Sam Mai 17, 2008 11:30

oui j'ai été trop vite...
attend


medium69
WRInaute accro
WRInaute accro
 
Messages: 2164
Inscription: Sam Mai 07, 2005 9:36

Message le Sam Mai 17, 2008 11:36

Code: Tout sélectionner
$value = 'http://www.bestnet.fr';
$value = preg_replace('#http://www\.(.+)\.(?:[a-z]{2,3})#U', '$1', $value);


Je regarde pour les autres options possibles


mustru
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 156
Inscription: Lun Juil 10, 2006 17:42

Message le Sam Mai 17, 2008 11:42

Merci beaucoup ! Ça marche à merveille.


medium69
WRInaute accro
WRInaute accro
 
Messages: 2164
Inscription: Sam Mai 07, 2005 9:36

Message le Sam Mai 17, 2008 11:58

Ce script prend tous les case de figure :

avec ou sans www.
avec ou sans page ou dossier interne


Code: Tout sélectionner
$uri = parse_url($value, PHP_URL_HOST);
if (preg_match('#www.#U', $uri)) {
   $value = preg_replace('#www\.(.+)\.[a-z]{2,3}#U', '$1', $uri);
} else {
   $value = preg_replace('#(.+)\.[a-z]{2,3}#U', '$1', $uri);
}


mustru
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 156
Inscription: Lun Juil 10, 2006 17:42

Message le Sam Mai 17, 2008 12:02

Merci merci merci ! très efficace !


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... 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