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 :

Manque de solution pour découvrir séparateur


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Inscrit en
    Octobre 2007
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 401
    Points : 153
    Points
    153
    Par défaut Manque de solution pour découvrir séparateur
    Bonjour,

    J'ai des strings qui peuvent avoir le format suivant:

    France,FR,"Population ages 00-14, total",SP.POP.0014.TO,3835508

    Cette ligne a des informations correspondantes à 4 colonnes:
    France => Pays
    FR => Code pays
    Population ages 00-14, total => Description
    SP.POP.0014.TO => Label
    3835508 => Valeur

    À l'aide de regexp, je suis en train d'essayer de trouver le séparateur des champs. Dans de cas là c'est la virgule mais il peut varier (",", ";", etc.).

    Ainsi, actuellement j'ai cette expréssion régulière: "[^a-zA-Z0-9\"]+"

    Cependant elle n'est pas encore correcte car elle ne me permet pas d'exclure la virgule se trouvant dans la valeur "Population ages 00-14, total"

    Quelqu'un aurait-il une suggestion?

    Merci

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu ne peux pas deviner le séparateur. Il n'y a que la lecture humaine qui te le permet.
    Dans ton exemple le séparateur pourrait être - ou . par exemple.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Je vais nuancer le propos : si tu as une liste fixe de séparateurs possibles (éventuellement un délimiteur ou une liste de délimiteurs) et un moyen de valider, ça doit être possible.

    Par exemple : ton séparateur peut être ,, ; ou ., ton délimiteur ' ou " et tu traites un fichier contenant plusieurs lignes qui ont le même format.
    Du genre :
    Pays,Code pays,desc.,label,valeur
    France,FR,"Population ages 00-14, total",SP.POP.0014.TO,3835508
    Allemagne,DE,Pop. générale,SP.POP.xx.xx,4154
    En passant les chaines dans str_getcsv avec les différentes possibilités, le bon séparateur (et déliminiteur) sera celui pour lequel il y aura le même nombre de champs pour chaque ligne.

    Mais en général, on s'arrange pour avoir des séparateurs non variables
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2014
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Réponse
    Chercher une inconnue dans une inconnue est complexe, il faut prendre le problème à l'envers c'est a dire ce chercher ce que vous connaissez et en déduire ce qui vous manque. Dans votre cas, si vous connaissez ne serait-ce qu'un seul enregistrement mais pas le séparateur, utilisez :
    France(.?)codeFrance\1membreCEE\1

Discussions similaires

  1. recherche solution pour affichage ds une StringGrid....
    Par steph_1 dans le forum Composants VCL
    Réponses: 13
    Dernier message: 13/07/2005, 13h24
  2. Réponses: 21
    Dernier message: 30/08/2004, 17h07
  3. meilleur solution pour créer un document imprimable???
    Par martimacfly dans le forum XML/XSL et SOAP
    Réponses: 26
    Dernier message: 08/07/2004, 10h09
  4. [Conception] Meilleures solutions pour gérer le multilangage
    Par scorpiwolf dans le forum Général Java
    Réponses: 3
    Dernier message: 06/07/2004, 16h11
  5. [Kylix] solution pour kylix3 OE BCB sous mdk 9.2
    Par raggadoll dans le forum EDI
    Réponses: 3
    Dernier message: 28/01/2004, 16h26

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