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 :

[XSLT]Convertir une chaîne en float, int etc ... avec XSL


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Avril 2006
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 9
    Par défaut [XSLT]Convertir une chaîne en float, int etc ... avec XSL
    Bonjour,

    J'ai un fichier XML contenant des données dont des nombres formatés au format français, c'est à dire avec des virgules pour les réels.

    Je n'ai pas la possibilité de demander à ce que ce XML soit corrigé pour n'avoir que des données au format américain (avec des points).

    Quelle est la meilleurs méthodes pour manipuler ces chaines comme si elles étaient des nombres réels (avec le format qui va bien pour XSL) ?

    Dans mon fichier source :

    <monNbFr>43,<monNbFr>
    <monNbFr>43,0<monNbFr>
    <monNbFr>43<monNbFr>


    instruction XSL



    Fichier que je veux obtenir


    <monNbUk>43.<monNbFr>
    <monNbFr>43.0<monNbFr>
    <monNbFr>43<monNbFr>


    Je cherche une solution générale qui traite tout l'éventail de formulation des nombres français. # ### ###,## ....



    Merci d'avance pour vos suggestions.

  2. #2
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    Salut !

    Il y a la fonction translate de XPATH que tu peux utiliser pour transformer les , en . http://www.w3.org/TR/xpath#function-translate
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  3. #3
    Membre habitué
    Inscrit en
    Avril 2006
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 9
    Par défaut
    Citation Envoyé par Swoög
    Salut !

    Il y a la fonction translate de XPATH que tu peux utiliser pour transformer les , en . http://www.w3.org/TR/xpath#function-translate

    Tout d'abord merci pour ta réponse rapide. Mais je reviens à la charge avec une question subsidiaire : comment puis-je remplacer un caractère par rien?

    Pour le , -> . c'est ok
    translate(/maValeurATransformer, ',', '.')

    Pour l'espace des milliers, je gère ça comment si veux le supprimer ?

  4. #4
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    If there is a character in the second argument string with no character at a corresponding position in the third argument string (because the second argument string is longer than the third argument string), then occurrences of that character in the first argument string are removed
    En français :
    S'il y a un caractère dans le second argument qui n'a pas de caractère à la position correspondante dans le troisième argument (parce que le second argument est plus court que le troisième), alors les occurences de ce caractère dans le premier argument seront supprimées
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

Discussions similaires

  1. [C#] Comment convertir une String en float ?
    Par DestinyWar45 dans le forum C#
    Réponses: 7
    Dernier message: 08/10/2010, 04h19
  2. Convertir une image de type 'int16' vers 'float'
    Par cedji dans le forum Images
    Réponses: 6
    Dernier message: 07/07/2009, 16h06
  3. Convertir une wxString en float
    Par afrodje dans le forum wxWidgets
    Réponses: 6
    Dernier message: 12/03/2009, 11h39
  4. [XSLT] Utiliser une fonction PHP à partir de la feuille de style XSL
    Par sayou84 dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 25/04/2007, 13h35
  5. [XSLT] Convertir une date
    Par Yudala dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 25/02/2007, 21h52

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