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 :

Expression régulière incorrecte [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 119
    Par défaut Expression régulière incorrecte
    Bonjour,

    J'essai de créer une expression régulière permettant par la suite d'interdire la saisie d'une adresse commençant par http.

    J'ai essayé

    ^[^http] marche pas car ici ce n'est pas le mot qui est pris en compte mais les lettres entre les crochets

    ^(^http) Aucun résultat
    ^[^(http)] Aucun résultat

    Quelqun pourrait-il m'aider s'il vous plait?

  2. #2
    Membre éclairé Avatar de mdr_cedrick
    Profil pro
    Développeur multimédia
    Inscrit en
    Janvier 2008
    Messages
    374
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : Janvier 2008
    Messages : 374
    Par défaut
    et est-ce que ^http fonctionnerait ?
    ils expliquent qu'il suffit de ^maChaine pour trouver tout ce qui commence par maChaine

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 119
    Par défaut
    Oui c'est ça mais je voudrais l'inverse. Que sa ne commence pas par "http"

  4. #4
    Membre éclairé Avatar de mdr_cedrick
    Profil pro
    Développeur multimédia
    Inscrit en
    Janvier 2008
    Messages
    374
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur multimédia

    Informations forums :
    Inscription : Janvier 2008
    Messages : 374
    Par défaut
    comme ça à vu de nez je ne sais pas
    donc si j'étais dans ton cas, le temps de trouver je ferai ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if (caCorrespond)
    {
       //je ne fais rien
    }
    else
    {
       //je fais ce que j'ai à faire
    }
    comme ça au moins ça fonctionne et ça te laisse le temps de trouver la syntaxe correcte

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 119
    Par défaut
    J'ai fais
    ^[^h]{1}[^t]{2}[^p]{1}.*
    Cela permet d'envoyer un message à l'utilisateur si la saisie commence par http mais aussi quand la saisie possede 3 caracteres ou moins :s

    Si quelqun a une idée, je suis preneur

    Merci

  6. #6
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    mdr_cedrick a raison hein...

    au lieu de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (maChaineNeContientPasHTTP) {
     tout est OK, on enregistre
    } else {
     envoi d'un message a l'utilisateur
    }
    il est 1000 fois plus simple de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (maChaineContientHTTP) {
     envoi d'un message a l'utilisateur
    } else {
     tout est OK, on enregistre
    }
    tu veux pas changer l'ordre de tes if ?

    ok

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (!maChaineContientHTTP)
    maChaineContientHTTP ? Pas besoin de regexp pour ca...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    stripos($chaine, 'http') !== FALSE

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 119
    Par défaut
    En fait je developpe en asp.net et comme la partie regex de PHP est active, j'ai posé ma question ici puisque seulement l'expression régulière je voulais. (Yoda sort de ce corps)

    Dans le cas où, ce que je cherche à faire avec les expressions régulières n'est pas possible je vais poser ma question dans la partie asp.net

    Je vous remercie

    PS: Si quelqun a la solution seulement avec les expressions regulieres, je suis preneur :p

  8. #8
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    s'il n'y a pas de else en ASP, ni d'inversion de condition (!), j'en ferais jamais ^^
    Je pense qu'il doit y avoir aussi une methode simple de recherche d'une chaine dans une autre.

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 119
    Par défaut
    Si biensur que l'on peut en integrant du C# ou VB.NET mais si je pouvais faire sans, cela m'arrangerai ^^

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

Discussions similaires

  1. Expression régulière incorrecte
    Par popy67 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 01/02/2008, 20h17
  2. Expression réguliére
    Par Mad_Max dans le forum Langages de programmation
    Réponses: 2
    Dernier message: 16/09/2003, 19h17
  3. [expression régulière] mon cerveau fait des noeuds..
    Par nawac dans le forum Algorithmes et structures de données
    Réponses: 7
    Dernier message: 27/05/2003, 11h06
  4. Expressions réguliéres
    Par Tooms dans le forum Langage
    Réponses: 4
    Dernier message: 06/12/2002, 19h42
  5. Réponses: 5
    Dernier message: 11/06/2002, 16h21

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