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 Perl Discussion :

tableau HTML vers CSV


Sujet :

Langage Perl

  1. #1
    Membre du Club
    Inscrit en
    Juin 2002
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 101
    Points : 42
    Points
    42
    Par défaut tableau HTML vers CSV
    Bonjour j'ai besoin d'un peu d'aide !

    Je voudrais transformer un tableau HTML en csv. J'ai trouve un script qui marche bien http://coscorrosa.com/programs/cgi/html2csv/html2csv.pl mais mon pbl n'est pas completment resolu

    la premiere colone de mon tableau HTML est NOM Prenom et je voudrais la decouper en deux dans mon fichier csv !

    NOM Prenom | phone | mail
    DUPOND,David | 324432432 | mail@mail.com

    pour que cela donne ceci une fois mon csv importer dans un tableur

    NOM | Prenom | phone | mail
    DUPOND | David | 324432432 | mail@mail.com


    une idee ? merci de votre aide

    Obelix

  2. #2
    Membre du Club
    Inscrit en
    Juin 2002
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 101
    Points : 42
    Points
    42
    Par défaut
    voici un exemple plus cocnret !

    "Nickname, suname", "phone", "mail", "comments"
    "dupont, david", "432423", "mail@mail.com", "azerrttyyy"
    "Gates, bill", "334323", "bill@msn.com", "dfsdsfdsfdfs"

    vers


    "Nickname", "suname", "phone", "mail", "comments"
    "dupont", "david", "432423", "mail@mail.com", "azerrttyyy"
    "Gates", "bill", "334323", "bill@msn.com", "dfsdsfdsfdfs"

    le truc serait de detecter tout les 1er paquets "xxx" de chaques linges pour rempplacer la vurgule à l'interieur par ","

    celaz pourrait suffir mais je sais pas comment faire ca en script !

    merci de votre aide

  3. #3
    Membre du Club
    Inscrit en
    Juin 2002
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 101
    Points : 42
    Points
    42
    Par défaut
    j'avance petit a petit

    je sais separer la premeire colone

    $csv =~ s/\"Nom, prenom\"/\"Nom\",\"prenom/;

    mais cela plante si je met un accent


    maintenant il faut que je fasse apreil pour chaque debut de ligne mais avec de vrai Nom et prenom

  4. #4
    Membre du Club
    Inscrit en
    Juin 2002
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 101
    Points : 42
    Points
    42
    Par défaut
    bon ben je me repond moi meme et je simplifie le pbl

    maintenant je veux transformer

    "DUPOND, Alex"

    en

    "DUPOND", "Alex"


    j'utilise ceci

    $csv =~ s/\"\w*\s*,\s*\w*\"/\"NOM\",\"PRENOM\"/;

    la condition est un
    caractere "
    suivi d'alphanum
    suivi ou pas de plus sieurs espaces
    suivi d'alpanum
    suivi ou pas de plusieurs expaces

    le pbl est cela m"efface tout les noms, prenoms, ca me donne

    "NOM", "PRENOM"


    comment sauveagrder les valeurs ? (noms et prenoms)

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 124
    Points : 145
    Points
    145
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $csv =~ s/,/","/ ;

    A essayer

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 124
    Points : 145
    Points
    145
    Par défaut
    Excuse je modifie l'expression car y a un espace qui rentre dans le début du Prenom.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $csv=~ s/(, )/", "/ ;
    A toi de vérifier

  7. #7
    Membre du Club
    Inscrit en
    Juin 2002
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 101
    Points : 42
    Points
    42
    Par défaut
    je pense avoir touver la solution mais bizarre

    // je recupere les "nom, prenom"
    $chaine = grep(/\"\w*\s*,\s*\w*\"/ ,$csv);

    // je remplace la virgule par la chaine ","
    $chaine =~ s/,/\",\"/;

    // je remplace les "nom, prenom" par "nom","prenom"
    $csv =~ s/\"\w*\s*,\s*\w*\"/$chaine/;

    le pbl est la vairable $chaine dont voici les traces :
    11
    21
    10
    20
    10
    20

Discussions similaires

  1. Réponses: 3
    Dernier message: 14/12/2012, 14h41
  2. [Excel] Exporter un tableau PHP vers CSV ou XLS
    Par mariafan dans le forum Bibliothèques et frameworks
    Réponses: 20
    Dernier message: 28/10/2011, 11h53
  3. Export tableau HTML vers Image PNG/JPG
    Par nic2t dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 06/07/2009, 09h08
  4. [Excel] Exportation tableau html
    Par Dakuan dans le forum Bibliothèques et frameworks
    Réponses: 16
    Dernier message: 17/09/2008, 20h19
  5. HTML vers CSV
    Par Le Roux B. dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/02/2008, 11h21

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