IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Récupérer le texte inclus entre deux balises custom [RegEx]


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 10
    Points : 7
    Points
    7
    Par défaut Récupérer le texte inclus entre deux balises custom
    Bonjour,

    Entrons directement dans le vif du sujet, voici mon problème :

    J'ai une chaine de caractère (un texte long en fait) dans lequel se trouve à plusieurs endroits du texte contenu entre des balises {cat} et {/cat}.
    Il faudrait que je puisse récupérer les sous chaînes contenues entre ces deux balises dans un tableau.

    exemple :

    $chaine = "blablablabla {cat}truc{/cat} blibliblbilbi blibli blibliblbi {cat}chose{/cat} blublub blub balablalalala {cat}machin{/cat}";

    Je voudrais récupérer un tableau contenant dans l'ordre "truc", "chose" et "machin".

    J'ai essayé de regarder du côté de la fonction preg_match_all() en PHP qui est censée retourner un tableau mais j'ai énormément de mal à rédiger la regex qui correspond à mon masque {cat}{/cat}.

    Ma reconnaissance infinie à qui pourra m'aider.

  2. #2
    Membre émérite
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Points : 2 969
    Points
    2 969
    Par défaut
    Salut, tu peux essayer ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $pattern = '`\{cat\}(.*)\{/cat\}`U';
    $subject = 'blablablabla {cat}truc{/cat} blibliblbilbi blibli blibliblbi {cat}chose{/cat} blublub blub balablalalala {cat}machin{/cat}';
    preg_match_all($pattern, $subject, $matches);
    foreach ($matches as $match) {
      echo $match[1];
    }
    Je n'ai pas pu tester

    Bon développement
    Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement. Albert EINSTEIN

    F.A.Q. : Java, PHP, (X)HTML / CSS

    N'oubliez pas de cliquer sur le bouton Résolu en bas de page quand vous avez obtenu une solution à votre problème

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Merci Nesmontou !

    Tu as donc ma reconnaissance infinie

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [RegEx] Extraction de texte situé entre deux balises
    Par cedricp38 dans le forum Langage
    Réponses: 4
    Dernier message: 10/09/2012, 13h54
  2. Suppression de texte présent entre deux balises.
    Par goldyfruit dans le forum Langage
    Réponses: 4
    Dernier message: 12/10/2009, 15h12
  3. [RegEx] Extraction de texte situé entre deux balises
    Par morpho365 dans le forum Langage
    Réponses: 7
    Dernier message: 27/03/2007, 18h18
  4. [DOM] [Débutant] Récupérer texte entre deux balises
    Par webrider dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 27/02/2007, 09h49
  5. Récupérer du texte d'un fichier xml entre deux balises
    Par manutudescends dans le forum Format d'échange (XML, JSON...)
    Réponses: 24
    Dernier message: 30/11/2005, 18h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo