apostrophe qui gène le rewriting dans expression régulière

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics

gjpeg
WRInaute discret
WRInaute discret
 
Messages: 99
Inscription: 6 Déc 2006

apostrophe qui gène le rewriting dans expression régulière

Message le Ven Déc 08, 2006 17:49

bonjour ,

j'ai (enfin) fait ce srcipt qui va chercher toutes mes URL dans ma page et les encode en mettant le contenu de ma balise TITLE dans le nom du fichier.

Or ya un problème, si dans ma balise TITLE, j'ai un apostrophe, alors le contenu de la balise est trinqué juste à l'apostrophe.
Le problème est que je ne sais pas comment dire dans mon expression régulière de bie nprendre toute contenu de la balise title y compris ce qui suit le apostrophe.

mon expression régulière est :
Code: Tout sélectionner
$reg="/a[\s]+[^>]*?href[\s]?=[\s\"\']+(.*?)[\"\']+.*?title[\s]?=[\s\"\r]+(.*?)[\"\']+.*?>/";

mon contenu title est :
Code: Tout sélectionner
title[\s]?=[\s\"\r]+(.*?)[\"\']


et mon code PHP qui extrait :
Code: Tout sélectionner
$txt=ob_get_contents();
$reg="/a[\s]+[^>]*?href[\s]?=[\s\"\']+(.*?)[\"\']+.*?title[\s]?=[\s\"\r]+(.*?)[\"\']+.*?>/";
preg_match_all($reg, $txt, $result);
for ($i=0; $i < count($result[0]); $i++) {
   $url=$result[1][$i];
   $title=$result[2][$i];echo "TITLE vaut=".$title."<BR>";
   $url_array=parse_url($url);
   $argv=array();
   $argv_array=array();
   if (!empty($url_array['query'])) {
      $argv=explode('&', $url_array['query']);
      for($j=0; $j < count($argv); $j++) {
         list($k, $v) = explode("=", $argv[$j]);
         $argv_array[$k]=$v;
      }
   }

   // là je fais mon rewriting en fonction de mes parametres
        if (!empty($argv_array['rub']) && !empty($argv_array['menu']) && !empty($argv_array['type']))
      $new_href[]=array('src'=>$url, 'dst'=>clean($title).",".$argv_array['rub']."-".$argv_array['menu']."-".$argv_array['pr_id']."-".strtolower($argv_array['type']).".html");
   
}
for ($i=0; $i < count($new_href); $i++) {
   $txt=str_replace($new_href[$i]['src'], $new_href[$i]['dst'], $txt);
}
echo $txt;


une idée ce cette apostrophe relourd ?[/code]


Patrice A.
WRInaute passionné
WRInaute passionné
 
Messages: 2415
Inscription: 11 Fév 2005

Re: apostrophe qui gène le rewriting dans expression réguliè

Message le Ven Déc 08, 2006 18:19

USA Mike a écrit:mon contenu title est :
title[\s]?=[\s"\r]+(.*?)["\']


Pourquoi ceci ?

gjpeg
WRInaute discret
WRInaute discret
 
Messages: 99
Inscription: 6 Déc 2006

ok

Message le Ven Déc 08, 2006 18:22

je ne sais pas, car j'ai recopié une expression extractrice de lien A HREF kekpart.

ps : hey Dj_Ajax, à cause de ton logo avatar sensuel, on a cru que j'étais sur un site-forum porno en regardant derriere mon épaule !!! Grrr ! la honte !


Patrice A.
WRInaute passionné
WRInaute passionné
 
Messages: 2415
Inscription: 11 Fév 2005

Message le Sam Déc 09, 2006 15:37

eeeeeh cette polémique a déjà eu lieu :lol:

bref, essaie sans le \' dans ta requete.


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités