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. Bonjour,

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

    A+
    0
    1. je veux avoir seulement le google.com dans une variable php pour une insertion dans une base de donnée
      0
    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
      0
    3. mais je ne veux pas le www.
      0
    4. faire test si commence par www. enlever www.
      faut chercher un chouille
      0
  2. La fonction PHP parse_url est pas mal aussi
    http://php.net/parse_url
    0