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 :

[XSL] replace un espace? ou est ce autre chose?


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre éclairé Avatar de luta
    Inscrit en
    Novembre 2003
    Messages
    1 038
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 038
    Points : 786
    Points
    786
    Par défaut [XSL] replace un espace? ou est ce autre chose?
    bonjour,
    un fichier Word convertit en HTML me génére à chaque titre des espaces entre les numéros et le texte du titre...
    apparement il s agit en fait de tabulation.

    pour les retirer, voici le template simple que j execute pour les supprimer
    ce qui arrive dans le template est un node du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <x:p class="ADTITLE1">
      <x:span>DEBUT
        <x:span>                                             </x:span>
      </x:span>
      <x:span>FIN.</x:span>
     <x:span>                                                                              </x:span>
    </x:p>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <xsl:template name="getText">
      <xsl:for-each select="text()">
        <xsl:variable name="indent" select="string(' ')"/>
        <xsl:call-template name="removeTxt">
    	  <xsl:with-param name="txt" select="."/>
    	  <xsl:with-param name="txtToRemove" select="$indent"/>
        </xsl:call-template>
      </xsl:for-each>
      <xsl:for-each select="*">
        <xsl:call-template name="getText"/>
      </xsl:for-each>
    </xsl:template>
    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
    <xsl:template name="removeTxt">
      <xsl:param name="txt"/>
      <xsl:param name="txtToRemove"/>
      <xsl:variable name="StrLength" select="string-length($txt)"/>
      <xsl:variable name="StrToRemoveLength" select="string-length($txtToRemove)"/>
      <xsl:choose>		
        <xsl:when test="starts-with($txt,$txtToRemove)">
          <xsl:call-template name="removeTxt">
    	    <xsl:with-param name="txt" select="substring($txt,$StrToRemoveLength"/>
    	    <xsl:with-param name="txtToRemove" select="$txtToRemove"/>
          </xsl:call-template>
        </xsl:when>
        <xsl:otherwise><xsl:value-of select="$txt"/></xsl:otherwise>
      </xsl:choose>
    </xsl:template>
    bref l appel de ces deux templates me récupère les text() et supprime les espaces de début...
    or rien ne se passe!
    je suppose que Word n exporte pas d espace en fait mais dans ces cas là comment savoir ce que c est et comment réussir à les supprimer!


  2. #2
    Membre éclairé Avatar de luta
    Inscrit en
    Novembre 2003
    Messages
    1 038
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 038
    Points : 786
    Points
    786
    Par défaut
    j arrive à afficher des codes du type
    &#xA;
    dans le XML...
    or je n arrive pas à le remplacer...étrange

Discussions similaires

  1. [XSLT] est ce que xsl génére des espaces blancs?
    Par luna007 dans le forum XSL/XSLT/XPATH
    Réponses: 7
    Dernier message: 02/02/2008, 16h53
  2. Réponses: 3
    Dernier message: 29/03/2006, 16h32
  3. [XSL-FO] première page qui est aussi la dernière...
    Par Rumeurs dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 01/03/2006, 20h53
  4. l'info c'est bien, appliqué à autre chose, c'est mieux!
    Par bubuchanwa dans le forum Etudes
    Réponses: 30
    Dernier message: 13/07/2005, 19h08
  5. [XSL] Tester si la valeur est un entier dans un xml
    Par MrMaze dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 23/07/2003, 04h35

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