Jeg har en txt-fil med en lang liste, der efter lidt explode og andet forbehandling ser sådan her ud for hvert medlem:
================================================ Subject: Nyt medlem!
Below is the result of your feedback form. It was submitted by (hans@hans.dk) on Thursday, August 9, 2001 at 14:59:03
Navn: Hans Gade: Hansegade 999 Postnr: 1234 By: Hanseby Alder: 35 Instrument: Violin Stilart: Folk/country Reference: Hjemmesidelink Kommentar: Jeg mener ikke at blah blah. |
Og efter at ha kørt det igennem lidt regulære udtryk, er alle værdier adskilt og klar til at smide i database.
Hans Hansegade 999 1234 Hanseby 35 Violin Folk/country Hjemmesidelink Jeg mener ikke at blah blah.
Men hvad gør jeg hvis linierne ikke altid er ens sat op (rækkefølge).. og hvad med sidste linie (som også kan variere)? "Kommentar: " er det sidste felt. Hvis det ikke findes kan det jo ikke bruges som "opdeler" med regulære udtryk.
Skabelonen på hvert afsnit kan variere en smule, alt efter om personen har udfyld felterne. Dvs. hvis feltet "Kommentar: " er tomt skrives der slet ikke Kommentar: .
Felterne "gade, postnr og by" var valgfrit så det er ikke altid det er med. "Navn" og "reference" er altid med.
Er det muligt at lave et par "eller" hist og pist, f.eks adskilt med "|"? jeg ka itt hitt ud af'et.
Cloudcomputing er i dag en central del af virksomheders IT, men mange organisationer er stadig stærkt afhængige af én enkelt cloududbyder.
Slettet bruger
14. maj 2003 - 03:09#1
Så vidt jeg forstår vil Navnet altid komme før adressen ikke og adressen før postnr, osv. ik'?
Synes godt om
Slettet bruger
14. maj 2003 - 03:19#2
I det tilfælde kan du bruge følgende... til at generere regexp'et... og så bruges $parts_in_str til at sætte værdierne de rigtige steder.... <?php $str = "Navn: Hans Gade: Hansegade 999 Postnr: 1234 By: Hanseby Alder: 35 Instrument: Violin Stilart: Folk/country Reference: Hjemmesidelink Kommentar: Jeg mener ikke at blah blah";
Felter der SKULLE udfyldes var: Navn, email (dén har jeg), by og reference. så de er altså sikre. Det er et gammelt tilmeldingssystem jeg lavede i 99, og det har ændret sig lidt undervejs, men jeg har aldrig fået det opdateret før nu.
Hvis man sætter det op er rækkefølgen altid (parentes=mulige):
Ok... håber du kan se logikken i det ovenstående... Og så er det det med hver femte i $matches.... når du har kørt det ovenstående og preg_match så fortsæt med følgende..... $i=2; $newinfo = array(); foreach($part_in_str as $value) { $newinfo[$value]=$matches[$i]; $i+=5; }
hvor rækkefølgen er underordnet. og det er nemt at checke whilke felter der er udfyldt.
Synes godt om
Slettet bruger
14. maj 2003 - 03:42#8
jakoba>>Han skal have smidt X antal text filer ind i en database.... Filerne er på det angivne format ovenover. Indholdet til navn, gade osv. skal så trækkes ud og lægges ind i databasen.
jeg ved ikke.. er der noget du ikke har fortalt, som du regner med jeg selv finder ud af? hehe
Synes godt om
Slettet bruger
14. maj 2003 - 04:05#17
Ret $parts til: $parts = array("Navn", "Gade","Postnr","By","Alder","Instrument", "Stilart", "Reference","Kommentar"); Hvad giver print_r($matches);????
Array ( ) Array ( [0] => Navn: Tommy Præst Møller Gade: spanien 15 a Postnr: 8000 By: Århus Alder: 19 Instrument: Guitar mundharmonika Stilart: blues Reference: Ven Kommentar: Det er en rigtig lækker side i har ( Super ) PÅ forhånd tak . T P Møller
hvordan behandler jeg så dét.. opdeling osv?
Synes godt om
Slettet bruger
14. maj 2003 - 04:20#26
Det er $newinfo du skal bruge... I mit giver ovenstående m. print_r($newinfo): Array ( [Navn] => Tommy Præst Møller [Gade] => spanien 15 a [Postnr] => 8000 [By] => Århus [Alder] => 19 [Instrument] => Guitar mundharmonika [Stilart] => blues [Reference] => Ven [Kommentar] => Det er en rigtig lækker side i har ( Super ) PÅ forhånd tak . T P Møller ) Det skulle ikke være så svært at håndtere...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.