Expression régulière php

Bonjour,
voila mon expression #^(https?://)?(www.)?(.+)# je veux récupéré le domaine d'une url ex google.com mais le user peut rentrer des valeurs du genre

https://www.google.com/?gws_rd=ssl
https://www.google.com/
https://www.google.com/?gws_rd=ssl
https://www.google.com
www.google.com
google.com

comment faire pour avoir juste le google .com avec un preg

GIlbert

2 réponses

  1. La fonction PHP parse_url est pas mal aussi
    http://php.net/parse_url
    1. Bonjour,

      Et c'est quoi l'intérêt de la manip?

      A+
      1. je veux avoir seulement le google.com dans une variable php pour une insertion dans une base de donnée
      2. Bonjour,

        Si je comprends bien...
        En clair, vous voulez seulement récupérer la partie "nom de domaine", par exemple:

        https://www.pagesjaunes.fr/

        vous voulez seulement enregistrer

        www.monsite.fr

        alors la solution est bien plus simple.... Vous "splittez" votre chaîne comme ceci:
        - test si commence par http
        - découpe au niveau de //
        - récupération seconde partie
        - sinon on garde comme tel

        $url = "https://www.pagesjaunes.fr/";
        if(substr($url)=="http") {
        $result = explode("//", $url);
        $url = $result[1];
        }

        en sortie on a www.monsite.fr

        si l'utilisateur tape sans http:// le résultat sera le même....

        et voili, voilà, voilou, sans expression régulière...

        A peluche
      3. mais je ne veux pas le www.
      4. faire test si commence par www. enlever www.
        faut chercher un chouille