PHP - preg_match_all() et expressions regulieres

Gill's

Nouveau WRInaute
Bonjour,

J'ai un petit soucis avec un preg_match_all et la construction d'expressions régulieres ... J'ai consulter http://www.expreg.com et un très bon tutoriel http://www.siteduzero.com/tuto-3-168-1-les-expressions-regulieres-partie-1-2.html
mais je ne m'en sort pas ... :roll:

Voici mon code :

Je voudrais rechercher avec un preg_match_all le code suivant :
<a href="http://www.site.com/ ... jusqu'à la prochaine balise </a>

$motif='`<a href="[^>]+">[^<]+</a>`';
preg_match_all($motif,$chaine,$out);

$count=count($out[0]);

for($i=0;$i<$count;$i++)
{
echo $i,' ',$out[0][$i],'<br/>';
}


Mais dès que je veux inclure :// dans la variable $motif, ca ne marche plus, j'ai du mal avec la synthax. (j'ai l'impression que c'est surtout les 2 points qui genent)
j'ai essayé ceci mais ca n'a pas marché :
$motif=<a href="http://www.site.com/[^>]+">[^<]+</a>`';

Comment faire ?

Merci de votre aide.
 

Didier_S

WRInaute occasionnel
pour te macher le boulot :
Code:
echo preg_match('/\<a href="(.*)">(.*)\<\/a>/Ui','<a href="http://URL/">AAA</a>',$matches);

puis print_r($matches)

Merci Eclipse et Regex Util ;)
note: le U est le flag Ungreedy, soit non-gourmand, qui évite que ton pattern attrape tout ce qui se situe entre le premier <a href et le dernier </a> de ta page ;)
 

Discussions similaires

Haut