IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Comment contrôler s'il commence par OU s'il commence par un autre [RegEx]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 181
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 181
    Par défaut Comment contrôler s'il commence par OU s'il commence par un autre
    Bonjour,

    J'utilise ceci pour voir si mon URL comme par http://www.
    Alors ca fonctionne, mais j'aimerais que le controlle regarde si ca comme par
    ou par
    Donc j'ai cherhcer un peu et j'ai vu ceci

    Donc j'ai modifié aisni
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /^(http:\/\/www.|https:\/\/www.){1}$/
    j'ai ensuite surpprimé le $, car je veux qu'on soit libre de saisir la suite
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /^(http:\/\/www.|https:\/\/www.){1}/
    Ca fonctionne, mais que fait le {1}?

  2. #2
    Membre Expert

    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Par défaut
    Le {1} signifie "une et une seule fois" (invalide ainsi les adresses du genre http://wwwhttps://www)

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 181
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 181
    Par défaut
    Ha ok super, donc en effet c'est important que je le garde.
    Merci!

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Bah non... ça sert à rien puisque c'est le comportement par défaut...
    Ceci dit, ton expression serait mieux comme ceci :
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Expert confirmé Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 986
    Par défaut
    Juste deux choses à ajouter:

    • Le point dans une regex a une signification particulière qui correspond à n'importe quel caractère à l'exception du caractère \n (nouvelle ligne). Pour obtenir le caractère littéral ., il faut donc l'échapper, soit \.. Sinon ta pattern peut très bien matcher un chaîne comme http://wwwX.
    • On peut changer de délimiteur de pattern en PHP, l'utilisation du slash n'est pas obligatoire. Dans le cas présent ça évite de devoir échapper les deux slashes.


    On obtient alors:


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 22/04/2014, 08h43
  2. Réponses: 15
    Dernier message: 06/12/2005, 17h41
  3. Comment contrôler le volume de Windows ?
    Par jmjmjm dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 04/10/2005, 10h12
  4. [PL/SQL] Comment contrôler un DELETE dans un TRIGGER ?
    Par PaulBilou dans le forum Oracle
    Réponses: 9
    Dernier message: 30/09/2005, 15h52
  5. Comment contrôler la carte graphique ?
    Par Nico*3-3 dans le forum Assembleur
    Réponses: 5
    Dernier message: 13/02/2005, 20h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo