[php] Regex

Regex [php] - PHP - Programmation

Marsh Posté le 03-08-2007 à 11:58:41    

Bonjour,
 
Voila je suis pas très fort avec les regex et la j' ai besoin d'une assez compliqué.
Donc je veux que ma regex trouve dans $string les adresses qui commencent par [http://] ensuite avec autant de caractères que l'on veut mais seulement des chiffres ou lettres ensuite un point (limite entre le sous domaine et le domaine) ensuite mondomaine.fr ou mondomaine.com et enfin je veux que ça finisse pas soit .com ou .fr ou un / ou .php ou .html.
 
Voila donc j'ai fait cette regex mais elle marche pas du tout :

Code :
  1. (preg_match_all('#^[http://][a-z0-9]+.[domaine.com|domaine.fr][a-z0-9._/-]+[.php|.htm|.html|.fr|.com|/]$#',$page,$matches))


et donc les resultats doivent aller dans $matches .
 
Voila merci d'avance ;-)

Reply

Marsh Posté le 03-08-2007 à 11:58:41   

Reply

Marsh Posté le 03-08-2007 à 12:45:56    

j'avais aussi cherché à parser des urls dans du texte, cf http://forum.hardware.fr/forum2.ph [...] w=0&nojs=0 doit y avoir un bout de solution :)

 


Code :
  1. $regex="{ \\b((https?|telnet|gopher|file|wais|ftp) : [\\w/\\#~:.?+=&%@!\\-]+?)\n"
  2. . "(?=[.:?\\-]*(?:[^\\w/\\#~:.?+=&%@!\\-]|$)) }x";
  3. echo preg_replace($regex, "<a href=\"$1\">$1</a>",$chaine_qui_contient_les_url)
 

parse n'importe quelle url.


Message édité par rengzehn le 03-08-2007 à 12:47:37
Reply

Marsh Posté le 03-08-2007 à 13:09:59    

Merci , mais moi je dois ajouter le domaine et l'extension, je ne sais pas comment les insérer... et je suis vraiment pas doué.

Reply

Marsh Posté le 03-08-2007 à 14:03:33    

SeNk a écrit :

... et je suis vraiment pas doué.


http://www.siteduzero.com/tuto-3-1 [...] esmid=-802
 
 
entre autres... Prend 1/4 d'heure le temps de lire... Pass 1/2 heure à essayer et ensuite reviens nous voir ;)

Reply

Marsh Posté le 03-08-2007 à 14:50:08    

En fait je l'ai déja lu et j'ai fait la regex de mon 1er post mais elle marche pas , je voudrais savoir pourquoi ?

Reply

Marsh Posté le 03-08-2007 à 16:51:27    

c'est bon ça marche avec ça : #http://[a-z0-9]+\.domaine\.(?:com|fr)(?:/(?:[a-z0-9._/-]+\.(?:php|htm|html))?\??([a-z0-9_.%&=+;-]*))?#


Message édité par SeNk le 03-08-2007 à 16:55:06
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed