|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : juin 2009 Messages : 13 ![]() |
Bonjour,
J'espère poster au bon endroit. Je cherche un script pour filtrer des messages publicitaires. J'aimerai en fait interdire tout message qui contient une invitation à venir visiter un site commercial du style: "venez faire un tour sur www.toto.com" - Ce doit pas être très dur à faire... mais je suis un newbee en Expression régulière - attention, je cherche à faire un truc qui tient compte du fait qu'une url peut prendre plusieurs formes: exemples: avec ou pas http ou https avec des chose comme ".fr" ".com" ".eu" etc... si vous avez quelques éclairages à me proposer ce serait génial : D'avance merci. |
|
|
00
|
|
|
#2 |
|
Membre régulier
![]() Inscription : novembre 2010 Messages : 102 ![]() |
Code :
((http:\/\/|https:\/\/)?(www.)?(([a-zA-Z0-9-]){2,}\.){1,4}([a-zA-Z]){2,6}(\/([a-zA-Z-_\/\.0-9#:?=&;,]*)?)?) |
|
|
00
|
|
|
#3 | |
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
Citation:
pourquoi www ? le mieux c'est quand même le : (http:\/\/|https:\/\/)
__________________
http://blog.stealth35.com/ |
|
|
|
00
|
|
|
#4 |
|
Membre régulier
![]() Inscription : novembre 2010 Messages : 102 ![]() |
http://eXample.Com renvois sur example.com (en tout cas sur chrome)
La regex c'est: (http ou https ://) [non obligatoire] (www.) [non obligatoire] domaine [min maj nombre + sous domaine gerer ] . fr/com |
|
|
00
|
|
|
#5 |
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
tu peux largement simplifier
(?:https?:\/\/)?[^\/]+\.\w+\S+
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#6 | ||
|
Invité de passage
![]() Inscription : juin 2009 Messages : 13 ![]() |
super d'avoir des réponses aussi rapide.
![]() Les regex c'est encore du chinois pour moi mais ça va bien m'aider à avancer ! Par contre quand j'utilise la solution de stealth35, ça me génère une erreur: Code :
Warning: preg_match() [function.preg-match]: Unknown modifier '?' je crois comprendre qu'il faut échapper le ? mais c'est pire encore si je l'échappe.... quelqu'un pour m'éclairer là dessus ? Mais si j'utilise la solution de Soull, ça ne génére aucune erreur et ça fonctionne presque à 100%: en fait sur: 'bienvenue sur www.monsite.com' ==> affiche VRAI 'bienvenue sur www.monsite' ==> affiche VRAI 'bienvenue sur monsite' ==> affiche VRAI (c'est normal) 'bienvenue sur http://monsite' ==> affiche FAUX (problème, le http n'est pas détecté) |
||
|
|
00
|
|
|
#7 | |||
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
Citation:
__________________
http://blog.stealth35.com/ |
|||
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : juin 2009 Messages : 13 ![]() |
|
|
|
00
|
|
|
#9 |
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#10 | ||
|
Invité de passage
![]() Inscription : juin 2009 Messages : 13 ![]() |
Ah ok !
du coup j'ai fait avec les délimiteurs: Code :
mais le test ne détecte toujours pas le "http" |
||
|
|
00
|
|
|
#11 |
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
faillait plus mettre des / en délimiteurs
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#12 |
|
Invité de passage
![]() Inscription : juin 2009 Messages : 13 ![]() |
|
|
|
00
|
|
|
#13 |
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
'/(?:https?:\/\/)?[^\/]+\.\w+\S+/'
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#14 | ||
|
Invité de passage
![]() Inscription : juin 2009 Messages : 13 ![]() |
Merci stealth35 de m'avoir répondu, mais ça ne marche toujours pas
je sais je dois être un boulet mais je ne suis vraiment pas à l'aise avec les regex ![]() quand je fais: Code :
|
||
|
|
00
|
|
|
#15 |
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
normale c'est pas une url valide...
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#16 |
|
Invité de passage
![]() Inscription : juin 2009 Messages : 13 ![]() |
Merci pour toutes ces lumières,
cela constitue une bonne base de réflexion pour aller plus loin dans ma démarche
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com