|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Inscription : juin 2003 Messages : 83 ![]() |
Bonjour,
je me fais des noeuds au cerveau sur une regex pourtant à priori pas si compliqué. J'ai trouvé une solution boiteuse Je reçois une chaine contenant x URL. La seule chose dont je suis sûr est que chacune commence par http://. Ex: Code :
http://monurl.comhttp://monurl.com2http://monurl.com3http://monurl.com
Ma solution RegEx : En gros ce quelle fait est d'extraire la chaîne "http://monurl.comhttp://" et avec le jeu des parenthèses capturantes, je récupère l'URL, mais : 1- je trouve ça moyen 2- la dernière URL n'est pas prise en compte puisqu'il n'y a pas de http:// qui suit. Mon problème est plus général. Je n'arrive à dire que la fin d'une chaîne est une chaîne exclue. Ce que je fais très bien avec un caractère via ce genre de syntaxe : [^;] (tout sauf un merci Cordialement |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 2 278 ![]() |
|
|
|
00
|
|
|
#3 | |
|
Membre du Club
![]() Inscription : juin 2003 Messages : 83 ![]() |
Oui, comme dis initialement :
Code :
http://monurl.comhttp://monurl.com2http://monurl.com3http://monurl.com
La fin d'une URL est donc soit le dernier caractère avant le http:// suivant, soit la fin de la chaine. merci EDIT : je pense que c'est rapé. J'ai continué mes recherches web et essais avec Expresso et je suis tombé là dessus : http://www.velocityreviews.com/forum...p-pattern.html Dans la première réponse, Alan Moore nous dit : Citation:
End of the story Je laisse ce topic ouvert car je n'ai pas trouvé ma réponse mais en attendant, je pense partir sur un split php sur la séquence http://. Bon aprem |
|
|
|
00
|
|
|
#4 |
|
Membre du Club
![]() Inscription : juin 2003 Messages : 83 ![]() |
Un cri dans la nuit
J'ai trouvé J'espère que ça en aidera plus d'un. Chaîne exemple : Code :
http://monsite1.com/toto.asphttp://monsite2.com/http://monsite3.com/image.jpghttp://monsite4.com/dir/file.php
Explication : l'astuce consiste à sélectionner http:// suivi de n'importe quel caractère, sans limite de répétition mais le moins fois possible (.*?). Suivi d'un http:// ou de la fin de ligne. Dans ce cas il suffira de boucler sur les 4 occurrences du tableau généré pour avoir les 4 URLs et ainsi choisir celle que l'on veut simplement. A bientôt |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com