Tester une URL avec une regex

Résolu
lnp Messages postés 96 Date d'inscription samedi 12 mars 2005 Statut Membre Dernière intervention 24 octobre 2007 - 30 juin 2005 à 12:51
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 - 4 juil. 2005 à 12:42
preg_match("
!(((https?|ftp)://(w{3}\.)?)(?<\!www)(\w+-?)*\.([a-z]{2,4}))!",$unsafe)



Est-ce que quelqu'un pourrait me dire si ce test peut être utilisé pour vérifier le format d'une adresse Internet ou FTP ?



Merci...




LNP...


pour vous...

16 réponses

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
4 juil. 2005 à 11:38
anthomicro, ton expreg ne fonctionne pas car ce n'est pas ftps mais sftp !



il faut utiliser celle la à la place :



/(https?|s?ftp|news):\/\/w{3}\.?\S/

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
3
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
30 juin 2005 à 15:09
ma source :



echo preg_match("!(((https?|ftp)://(w{3}\.)?)(?<\!www)(\w+-?)*\.([a-z]{2,4}))!",'moi : http://www.coucou747.hopto.org lol');



le résultat :



Warning: preg_match(): Compilation failed: unrecognized character
after (?< at offset 30 in /var/www/html/1.php on line 16


voila, ton expreg n'est pas valide, si t'avais testé, t'aurais compris ça facilement...



celle ci marche :



echo preg_match("/[fh]t?tps?:\/\/w{3}\.?\S/",'moi : ftp://www.coucou747.hopto.org lol');



son dérfaut : elle prends aussi fttps ou ftps (or c'est sftp)...

donc, si tu peux ftp, ftps, http et https, il faut deux expressions
régulières (enfin, je ne vois pas comment faire autrement, pourtant, il
doit y avoir un moyen...)




In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
30 juin 2005 à 20:23
Salut,



au pire :



echo preg_match("/(https?|ftps?|news):\/\/w{3}\.?\S/",'moi : ftp://www.coucou747.hopto.org lol');



Essaie si ça marche, je sais pas mais bon on verra bien ^^

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
30 juin 2005 à 20:46
joli, je ne savais pas que le or pouvait donner le choix entre
plusieurs groupes de lettres, je croyais qu'on ne l'utilisais que pour
une lettre...


In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
30 juin 2005 à 20:51
ça marche?

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
30 juin 2005 à 20:55
aparement...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
30 juin 2005 à 20:56
ok ;-)

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
lnp Messages postés 96 Date d'inscription samedi 12 mars 2005 Statut Membre Dernière intervention 24 octobre 2007
4 juil. 2005 à 11:27
Salut,



Désolé j'avais laissé de côté ce problème mais je ne l'avais pas oublié ! ! !

Cette regex, "/[fh]t?tps?:\/\/w{3}\.?\S/", me semble pas mal en attendant une meilleure, si une meilleure existe...



Juste une précision, est-ce que celle-là te semble correcte :
"!([fh]t?tps?:\/\/)?(w{3}\.?)?\S!" ? J'ai rajouté des parenthèses pour
rendre optionnel l'écriture de "http://" et/ou "www"... J'ai fait
quelques tests, elle semble convenir.

Si vous avez des critiques... Postez-les ! ! !



Merci...

particulièrement à coucou747 et à AnthoMicro


LNP...

pour vous...



http://manuelpayet.free.fr
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
4 juil. 2005 à 11:30
"J'ai fait quelques tests, elle semble convenir."



La réponse à ta question est là ;-)

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
lnp Messages postés 96 Date d'inscription samedi 12 mars 2005 Statut Membre Dernière intervention 24 octobre 2007
4 juil. 2005 à 11:38
Je ne poste des messages par hasard... comme tu
sembles le dire. Si je demande, si oui ou non cette regex convient,
alors j'aimerai savoir si il y a quelques critiques...




LNP...


pour vous...





http://manuelpayet.free.fr





###### Je m'exprimerai autrement à l'avenir... pour que tout le monde comprenne... ######
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
4 juil. 2005 à 11:40
"

anthomicro, ton expreg ne fonctionne pas car ce n'est pas ftps mais sftp !"



Hum mdr oki désolé j'avais pas fait gaffe :-)

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
lnp Messages postés 96 Date d'inscription samedi 12 mars 2005 Statut Membre Dernière intervention 24 octobre 2007
4 juil. 2005 à 11:45
No souci ! ! !


LNP...

pour vous...



http://manuelpayet.free.fr
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
4 juil. 2005 à 12:12
comme je l'ai dit, ton expression régulière ne convient pas car ce n'est pas ftps mais sftp...
et selon ton expression régulière, fttps fonctionne...




In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
4 juil. 2005 à 12:23
bien sûr puisque j'avais accepté le fttps au lieu de sftp ce que j'ai dit plus haut

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
4 juil. 2005 à 12:42
mon message était pour lnp qui demandait quelques commentaires sur sa solution...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
4 juil. 2005 à 12:42
ok

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
Rejoignez-nous