begin process at 2012 05 31 14:19:03
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

regex pour extraire du code entre 2 balises


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

regex pour extraire du code entre 2 balises

mercredi 25 octobre 2006 à 17:41:26 | regex pour extraire du code entre 2 balises

RV2931

bonjour,

ça fait quelques heures que je cherche, je trouve pas comment faire,
je voudrais extraire du texte d'une page html, ce texte est compris entre 2 balises <tr ...> et </tr>
je n'arrive pas et je me pause une question en plus,
les expressions régulières de ce type sont faites pour fonctionner sur une ligne, donc si il y a des retours à la ligne, et bien comment ça se passe.
parce que si je veux extraire un bloc de données contenant des retours à la ligne, des vrais "\n", pas des <br>, et ben il faut tester sur plusieurs ligne, mais justement, je crois que ça le fait pas les regex.
Je pense qu'il faudrait déjà linéariser tout sur une seule ligne, non ???

merci
vendredi 27 octobre 2006 à 11:40:34 | Re : regex pour extraire du code entre 2 balises

audayls

Salut,
Tu essaye d'extraire les valeurs dans les balises (genre : "<tr class="css">") ou ce que contenus (genre "<tr>Contenu</tr>) ?

For every choice, a consequence (Fable)
vendredi 27 octobre 2006 à 15:24:22 | Re : regex pour extraire du code entre 2 balises

PaDa

Membre Club
Hi,

PHP gère bien le multiligne dans ses regex, aucun souci.
Donc tu passes dans une seule variable chaine ce que tu veux traiter, en effet, mais ensuite plus aucun souci PHP se débrouille.

Tu peux utiliser un pattern du type :

"!<tr( [^>]+)?>(.*)</tr>!Ui"

L'option "U" va chercher à raccourcir au maximum le matching, ca rend le "*" non gourmand, pour éviter de chopper plusieurs blocs <tr>...</tr> dans ton retour.
L'option "i" c'est juste pour que ce soit insensible a la casse (possibilité d'avoir </TR> par exemple)

Code final :

PaDa
vendredi 27 octobre 2006 à 15:30:39 | Re : regex pour extraire du code entre 2 balises

PaDa

Membre Club
Oups. Oublié le code final:

if (preg_match("!<tr( [^>]+)?>(.*)</tr>!Ui",$tontext,$matches)) {
    echo "Il y a bien des blocs TR !";
    print_r($matches);
}

PaDa


Cette discussion est classée dans : ligne, code, extraire, regex, balises


Répondre à ce message

Sujets en rapport avec ce message

extraire texte entre balises [ par scoder ] bonjour je récupère le contenu d'une ligne d'une page web dans une variable, et j'aimerai extraire le texte qu'il y a entre les balises et de cette pB avec Netscape [ par manueg ] Bonjour à tous, je ne comprends pas pourquoi ce code fonctionne sans pb sous IE alors qu'avec Netscape il ne trouve pas la page que je veux afficher e Tester si un server est en ligne !!!! [ par FearBlue ] Slt a tous !!!!Je réalise un scripts tres simple afin de savoir via une page web si mon server est en ligne Rien de bien sorcier mais g un probleme vo regex pour frimousse.org [ par fanfouer ] bonjours, j'ai déjà laisser un topic sur le sujet dans las BDD mais je pense que la rubrique "au secours!!" est plus apropriée...j'aimerai récuperer l Script compliqué ! Help :) [ par motherboy ] Bonjour à tous,Je m'explique brièvement.J'ai un script PHP a codé, mais malgré mes compétences je rame :/Principe du code à effectuer :1) Lire un fich Extraire une chaine de caractère comprise entre 2 balises [ par Bountard ] Salut à tous, j'aimerais pouvoir extraire la chaine de caractère comprise entre 2 balises, type et par exemple. Je ne vois pas comment faire merci p Affichage et retour à la ligne [ par Stark ] GeneralStarkBonjour tout le monde,Il se trouve que je veux remplir la cellule d'un tableau à l'aide du contenu d'une variable (String) et que Extraire une partie d'une chaine [ par gibozsec ] Bonjour.Je cherchce une méthode qui me permetrais de reconnaitre un format de chaine spécifique et d'en extraire plusieurs parties.Par exemple plusieu Regexp [ par coockiesch ] Salut!J'ai du texte avec des balises [code_php][/code_php]Ce qui est entre les balises est multi-lignes et je ne sais comment faire, j'ai testé qq tru a l'aide mise en place code [ par zizou94 ] bonjour a tous je vous explique mon souci, je suis novice mais alors vraiment novice dans la programmation en php, j'y passe mes jours et mes nuits.J


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,296 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales