Likes Likes:  0
Resultaten 1 tot 7 van de 7
Geen
  1. #1
    matthijsdezwart@gmail.com
    eregi_replace met vriend preg_match (poging 4)
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    eregi_replace met vriend preg_match (poging 4)

    (Gisteren veel problemen met de nieuwsserver, dus ik zie mijn
    originele posting, tweede poging en eventuele antwoorden niet. Vandaar
    nog een poging, maar de chello server geeft de berichten niet weer.
    Dus nu maar via google)

    Voor het vullen van een database moet ik een file regel voor regel
    inlezen
    en de info via explode opbreken in stukken die naar de kolomen in de
    database geschreven kunnen worden. Met explode op een comma zou ik
    normaal
    gezien de regel mooi opbreken in stukken die ik nodig heb, maar er kan
    ook
    een comma in het commentaar staan....en die wordt dan ook onnodig
    opgebroken. Dus dacht ik, laat ik dan "," eerst vervangen door
    bijvoorbeeld
    || en dan explode op ||, maar toen viel het me op dat veld 3, 5 en 8
    niet
    vergezeld worden door quotes.

    "0102846383","EUR",20070102,"D",178.50,"012345679" ,"Naam van
    tegenpartij",20070102,"MA","hier wat commentaat met een , dus. Soms
    zelf een
    comma bij een getal zoals hier 1,5","kenmerk: pta013235",etc...


    als oplossing voor de data (veld 3 en 8) dacht ik aan dit:

    ($buffer is de regel die ingelezen wordt)
    preg_match_all("([0-9])",$buffer,$getallen);
    $aantalaanpassingen = count($getallen);
    for($i=0;$i<$aantalaanpassingen;$i++)
    {
    str_replace(',$getallen[$i],','\",$getallen[$i],\"',$buffer);
    }

    Maar dit geeft niet het gewenste resultaat. Veld 3 en 8 blijven zonder
    quotes staan.
    Iemand een suggestie waarom dit niet werkt en hoe ik dit zo zou kunne
    oplossen dat het wel werkt en het lieft ook zo dat veld 5 ook direct
    meegenomen kan worden?
    Mazzel,

    Matthijs



  2. #2
    Nico Schuyt
    eregi_replace met vriend preg_match (poging 4)
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: eregi_replace met vriend preg_match (poging 4)

    matthijsdezwart@gmail.com wrote:
    > Voor het vullen van een database moet ik een file regel voor regel
    > inlezen
    > en de info via explode opbreken in stukken die naar de kolomen in de
    > database geschreven kunnen worden. Met explode op een comma zou ik
    > normaal
    > gezien de regel mooi opbreken in stukken die ik nodig heb, maar er kan
    > ook
    > een comma in het commentaar staan....


    Kun je geen ander scheidingsteken gebruiken? Zoals een tab-teken.
    Vervolgens inlezen met 'load data (local) infile'

    --
    Nico



  3. #3
    Rik Wasmus
    eregi_replace met vriend preg_match (poging 4)
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: eregi_replace met vriend preg_match (poging 4)

    On Tue, 18 Dec 2007 14:04:26 +0100, <matthijsdezwart@gmail.com> wrote:

    > (Gisteren veel problemen met de nieuwsserver, dus ik zie mijn
    > originele posting, tweede poging en eventuele antwoorden niet. Vandaar
    > nog een poging, maar de chello server geeft de berichten niet weer.
    > Dus nu maar via google)
    >
    > Voor het vullen van een database moet ik een file regel voor regel
    > inlezen
    > en de info via explode opbreken in stukken die naar de kolomen in de
    > database geschreven kunnen worden. Met explode op een comma zou ik
    > normaal
    > gezien de regel mooi opbreken in stukken die ik nodig heb, maar er kan
    > ook
    > een comma in het commentaar staan....en die wordt dan ook onnodig
    > opgebroken. Dus dacht ik, laat ik dan "," eerst vervangen door
    > bijvoorbeeld
    > || en dan explode op ||, maar toen viel het me op dat veld 3, 5 en 8
    > niet
    > vergezeld worden door quotes.
    >
    > "0102846383","EUR",20070102,"D",178.50,"012345679" ,"Naam van
    > tegenpartij",20070102,"MA","hier wat commentaat met een , dus. Soms
    > zelf een
    > comma bij een getal zoals hier 1,5","kenmerk: pta013235",etc...
    >
    >
    > als oplossing voor de data (veld 3 en 8) dacht ik aan dit:
    >
    > ($buffer is de regel die ingelezen wordt)
    > preg_match_all("([0-9])",$buffer,$getallen);
    > $aantalaanpassingen = count($getallen);
    > for($i=0;$i<$aantalaanpassingen;$i++)
    > {
    > str_replace(',$getallen[$i],','\",$getallen[$i],\"',$buffer);
    > }
    >
    > Maar dit geeft niet het gewenste resultaat. Veld 3 en 8 blijven zonder
    > quotes staan.
    > Iemand een suggestie waarom dit niet werkt en hoe ik dit zo zou kunne
    > oplossen dat het wel werkt en het lieft ook zo dat veld 5 ook direct
    > meegenomen kan worden?


    In PHP zijn fgetcsv() en fputcsv() je vrienden denk ik... waarom moeilijk
    doen als het makkelijk kan . Verder, als je MySQL gebruikt, dan is
    inderdaad de LOAD DATA (LOCAL) INFILE syntax ook een geweldige, die ook
    prima het verschil wel snapt tussen een komma binnen en een komma buiten
    quotes.
    --
    Rik Wasmus

  4. #4
    Matthijs de Z
    eregi_replace met vriend preg_match (poging 4)
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: eregi_replace met vriend preg_match (poging 4)



    "Rik Wasmus" <luiheidsgoeroe@hotmail.com> schreef in bericht
    newsp.t3jb6jgi5bnjuv@metallium.lan...
    > On Tue, 18 Dec 2007 14:04:26 +0100, <matthijsdezwart@gmail.com> wrote:



    > In PHP zijn fgetcsv() en fputcsv() je vrienden denk ik... waarom moeilijk
    > doen als het makkelijk kan . Verder, als je MySQL gebruikt, dan is
    > inderdaad de LOAD DATA (LOCAL) INFILE syntax ook een geweldige, die ook
    > prima het verschil wel snapt tussen een komma binnen en een komma buiten
    > quotes.


    ik geloof dat ik met vriend fgetcsv al een aardig eind in de richting kom
    voor een probleem. Bedankt daarvoor.
    Maar bij een ander probleem zou het wel wenselijk zijn als ik kan zoeken op
    een reg expr en daar omheen iets kan plaatsen. Is dat dus eigenlijk wel
    mogelijk?
    mazzel,

    Mathijs

    > --
    > Rik Wasmus



  5. #5
    Matthijs de Z
    eregi_replace met vriend preg_match (poging 4)
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: eregi_replace met vriend preg_match (poging 4)

    > Kun je geen ander scheidingsteken gebruiken? Zoals een tab-teken.

    Nee, helaas krijg ik de file zo aangeleverd. Vandaar het 'probleem'.
    Mazzel,

    Matthijs

    > Vervolgens inlezen met 'load data (local) infile'



  6. #6
    Ronald Klip
    eregi_replace met vriend preg_match (poging 4)
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: eregi_replace met vriend preg_match (poging 4)

    Op Wed, 19 Dec 2007 11:27:46 +0100 schreef Matthijs de Z:
    > "Rik Wasmus" <luiheidsgoeroe@hotmail.com> schreef in bericht
    > newsp.t3jb6jgi5bnjuv@metallium.lan...
    >> On Tue, 18 Dec 2007 14:04:26 +0100, <matthijsdezwart@gmail.com> wrote:


    [csv parsen]

    >> In PHP zijn fgetcsv() en fputcsv() je vrienden denk ik... waarom
    >> moeilijk doen als het makkelijk kan . [..]

    >
    > ik geloof dat ik met vriend fgetcsv al een aardig eind in de richting
    > kom voor een probleem. Bedankt daarvoor.
    > Maar bij een ander probleem zou het wel wenselijk zijn als ik kan zoeken
    > op een reg expr en daar omheen iets kan plaatsen. Is dat dus eigenlijk
    > wel mogelijk?


    Tuurlijk. Het lastige is dat je rekening zou moeten houden met quotes,
    komma's en regeleindes binnen velden. In de comments op
    http://nl3.php.net/split staan enkele stukjes script, misschien heb je
    daar iets aan?


    --
    groet, Ronald

  7. #7
    Matthijs de Z
    eregi_replace met vriend preg_match (poging 4)
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: eregi_replace met vriend preg_match (poging 4)


    "Ronald Klip" <nieuws@contentecontent.invalid> schreef in bericht
    newsp.t3kwelriu6ldbc@dedell...

    >> Maar bij een ander probleem zou het wel wenselijk zijn als ik kan zoeken
    >> op een reg expr en daar omheen iets kan plaatsen. Is dat dus eigenlijk
    >> wel mogelijk?


    > Tuurlijk. Het lastige is dat je rekening zou moeten houden met quotes,
    > komma's en regeleindes binnen velden. In de comments op
    > http://nl3.php.net/split staan enkele stukjes script, misschien heb je
    > daar iets aan?


    Ik zie het staan. Ik denk dat ik daar wellicht iets aan kan hebben. Bedankt!
    Mazzel,

    Matthijs


    >
    >
    > --
    > groet, Ronald



Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics