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

XSL/XSLT/XPATH XML Discussion :

supprimer passage à la ligne en sortie texte


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 4
    Par défaut supprimer passage à la ligne en sortie texte
    Bonjour,

    Je débute avec le xml et et xslt; et malgré mes recherches j'ai des difficultés pour résoudre le problème suivant. J'utilise xslt pour extraire des données d'un fichier xml.

    Voici le résultat que j'aimerais avoir:
    robot.walk10s

    Voici le résultat que j'obtiens:
    robot.walk

    10

    s

    Je ne sais donc pas quelles fonctions utiliser dans le fichier xslt pour mettre tout sur la même ligne

    Ci-dessous, mon fichier xml:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <?xml version="1.0" encoding="iso-8859-1"?>
    <Sequence>
      <Carte>
         <type>Debut</type>
         <type_suivant>Action</type_suivant>
      </Carte>
     
      <Carte> 
        <type>Action</type>
        <instruction>robot.walk</instruction>
        <type_simultané></type_simultané>
        <type_suivant>Valeur</type_suivant>
      </Carte>
     
      <Carte>
          <type>Valeur</type>
          <instruction>10</instruction>
          <type_suivant>Unité</type_suivant>
      </Carte>
     
      <Carte>
        <type>Unité</type>
        <instruction>s</instruction>
        <type_suivant></type_suivant>
      </Carte>
     
    </Sequence>
    Ci-dessous, mon fichier xslt:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?xml version="1.0" encoding="iso-8859-1"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
        xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
    >
        <xsl:output method="text"/>
     
      <xsl:template match="Carte">
        <xsl:value-of select="instruction"></xsl:value-of>
        </xsl:template>
    </xsl:stylesheet>
    Merci d'avance.

  2. #2
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Par défaut
    Le souci c'est que j'obtiens bien ce résultat moi
    robot.walk10s
    tu dois avoir un retour à ligne pris en compte dans ton code

    essaye exactement ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    	<xsl:output method="text"  indent="no"/>
    	<xsl:template match="Carte"><xsl:value-of select="instruction"/></xsl:template>
    </xsl:stylesheet>

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 4
    Par défaut
    Désolé pour le silence et merci d'avoir été si réactif. J'obtiens la même chose avec ton code. Je ne sais pas si ça vient du fait que je génère la sortie sous Visual Studio 2008. J'ai remodifié mon code et j'obtiens finalement la solution désirée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?xml version="1.0" encoding="iso-8859-1"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
      <xsl:output method="text" indent="no"/>
      <xsl:template match="Sequence">
        <xsl:for-each select="Carte">
          <xsl:value-of select="instruction"/>
          <xsl:choose>
          <xsl:when test="type='Action'">(</xsl:when>
          <xsl:when test="type='Unité'">);</xsl:when>
          </xsl:choose>
        </xsl:for-each>
      </xsl:template>
     
    </xsl:stylesheet>

Discussions similaires

  1. Forcer le passage à la ligne d'un texte sans espace
    Par fazpedro dans le forum Mise en page CSS
    Réponses: 12
    Dernier message: 30/07/2011, 14h48
  2. passage à la ligne dans fonction text
    Par tubaas dans le forum MATLAB
    Réponses: 4
    Dernier message: 01/02/2010, 12h04
  3. Supprimer lignes dans fichier texte
    Par dr_octopus74 dans le forum VBScript
    Réponses: 1
    Dernier message: 20/02/2007, 17h54
  4. Supprimer la première ligne d'un fichier texte
    Par n@n¤u dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 13/07/2006, 08h38
  5. [HTML] Supprimer le multi ligne d'une zone de text
    Par Furius dans le forum Balisage (X)HTML et validation W3C
    Réponses: 9
    Dernier message: 29/11/2005, 14h49

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