REGEX

Étiquetté : , ,

  • REGEX

    Posté par Alain Pujol sur 11 mars 2022 à 7h50

    Bonjour,

    Dans mon application j’utilise ce regex (trouvé sur internet) pour vérifier une adresse Email

    “^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$”

    Mais après le @xx. je dois obligatoirement saisir 2 caractères minimum et cela fonctionne, mais la limite de 4 caractères ne fonctionne pas. je peux donc saisir autant de caractères que je le veux, de même je peux saisir tout type de caractère après @
    Je ne trouve pas le correctif à appliquer

    Merci si vous pouvez m’aider

    PostID=SJP2lxAg8E5Dsu3

    Alexandre a répondu Il y a 1 année 1 Membre · 10 Réponses
  • 10 Réponses
  • R3dKap

    Membre
    11 mars 2022 à 9h37

    Salut @Alain,

    Pour construire, tester et vérifier mes REGEX j’utilise ce site :

    Essaie de voir si tu t’en sors… Là j’ai pas le temps de regarder de suite, mais je pourrais y jeter un oeil ce week-end…

    CommentID=joCvmTpjQqM5fRr, PostID=SJP2lxAg8E5Dsu3

  • Alain Pujol

    Membre
    11 mars 2022 à 12h36

    Merci Emmanuel,
    J’ai au moins récupéré un site pour tester.

    Entre temps j’ai trouvé cette regex qui fonctionne

    ^[\w-\.]+@([\w-]+\.)+[\w-]{2,3}$ (pas sur le site de test)

    Si à l’occasion tu peux regarder, cela peut-être utile???
    Bon week end

    CommentID=lG86ZcpSORUFb7b, PostID=SJP2lxAg8E5Dsu3

  • R3dKap

    Membre
    12 mars 2022 à 7h36

    Quelles sont tes contraintes précisément ? Quelles règles doivent suivre le format de l’adresse mail dans ton cas ?

    CommentID=TzWe4K0CIIeHLWC, PostID=SJP2lxAg8E5Dsu3

  • Alain Pujol

    Membre
    12 mars 2022 à 19h20

    Bonsoir,

    C’est une adresse classique du type prenom.nom@domaine.fr ou com

    Je veux interdire les caractères non autorisés et le nombre de caractères après le point du domaine.

    CommentID=LULLUkIKzNKXlAS, PostID=SJP2lxAg8E5Dsu3

  • R3dKap

    Membre
    13 mars 2022 à 9h35

    Alors en fait, peu savent qu’en réalité énormément de caractères sont autorisés dans les adresses mails mais dans 99% des cas ce sont les caractères les plus courants qui sont utilisés. Je vais voir si je trouve une regex digne de ce nom…

    CommentID=MOoQuV7tp6JYnUw, PostID=SJP2lxAg8E5Dsu3

  • R3dKap

    Membre
    13 mars 2022 à 9h44

    Bon, alors y’a la version officielle (mais elle est juste monstrueuse) :

    Et après j’ai trouvé celle-ci qui est plus simple :

    ^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$

    Je l’ai testé de mon côté, elle fonctionne.

    Dis-moi ce que t’en penses…

    CommentID=AWiSBtMxZxp9hbk, PostID=SJP2lxAg8E5Dsu3

    • Alain Pujol

      Membre
      14 mars 2022 à 9h24

      Bonjour Emmanuel,

      Ta proposition me convient parfaitement. Merci du temps que tu y a passé

      Je ne sais pas si tu as testé celle ci avec POWERAPPS, qui me semble équivalente à la tienne?

      Bonne journée

       "^[\w-\.]+@([\w-]+\.)+[\w-]{2,3}$" 

      SubCommentID=ZG9Xrhyp3SGmPEz, CommentID=AWiSBtMxZxp9hbk, PostID=SJP2lxAg8E5Dsu3

  • Alexandre

    Membre
    14 mars 2022 à 22h43

    Juste pour info le caractère + est tout à fait valable dans les adresses email et les validateurs ont trop souvent tendance à l’interdire…

    Ainsi truc+much@mail.ext est une adresse mail tout à fait valide.

    Dans la dernière regexp de @R3dKap on pourrait alors ajouter ce symbole dans la classe de la première partie ^([a-zA-Z0-9_\-\.\+]+)@… (je ne reproduit pas tout car le code de la regexp communiquée par @R3dKap m’apparait tronqué)

    CommentID=IueLArkw6rMAmmK, PostID=SJP2lxAg8E5Dsu3

  • R3dKap

    Membre
    15 mars 2022 à 8h47

    @Alexandre bizarre qu’il t’apparaisse tronqué le code de la regexp. T’as bien cliqué sur le lien See more juste en-dessous ?

    CommentID=KwUdZIQ4Z2Z40NR, PostID=SJP2lxAg8E5Dsu3

  • Alexandre

    Membre
    15 mars 2022 à 8h53

    ah oui effectivement. Je me suis laissé abuser par la coloration spécifique pensant la voir en intégralité 😉

    CommentID=3cgI43pmD0VTx4O, PostID=SJP2lxAg8E5Dsu3

Connectez-vous pour répondre.