Avatar billede mick Nybegynder
30. august 2007 - 17:43 Der er 6 kommentarer

Hjælp med reg. expresions

Jeg har behov for lidt hjælp med at udforme en regular expresion. Udtrykket skal kunne analysere en tekststreng med følgende format:

64.224000, 11.376000,1, -777.0,39324.6372144, 30-aug-07, 15:17:35

Hvis ikke tekststrengen har dette format skal den forkastes.
Avatar billede jensgram Nybegynder
30. august 2007 - 18:00 #1
-?\d+(\.\d+)?(,-?\d+(\.\d+)?)?  # 64.224000, 11.376000,1, -777.0,39324.6372144

|

(0[1-9]|[12]\d|3[01])-(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)-\d{2}  # 30-aug-07

|

([01]\d|2[0-3])(:[0-5]\d){2}

Meget utestet :)
Avatar billede jensgram Nybegynder
30. august 2007 - 18:01 #2
Dvs.

-?\d+(\.\d+)?(,-?\d+(\.\d+)?)?|(0[1-9]|[12]\d|3[01])-(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)-\d{2} |([01]\d|2[0-3])(:[0-5]\d){2}
Avatar billede nielle Nybegynder
30. august 2007 - 18:46 #3
Det er jo ikke rigtigt til at sige, hvis vi ikke har en rimelig ide om hvor meget strengen egentligt kan variere fra tilfælde til tilfælde. Det er formentligt rimeligt sikkert at vi kan gætte noget om hvad der kan stå i enden - i stedet for "30-aug-07, 15:17:35" - men hvad med starten:

1) Er der altid der samme antal ciffre foran og efter '.'-tegnene
2) Er der altid det samme antal '.' og ',' - og står de på de samme pladser altid.
3) Der hvor der står ...,1,... - kan der nogensinde stå andet end 1 på den plads)
4) Er der altid et '-' foran 777.
Osv.

Prøv at give nogle flere eksempler og forklar lidt om hvad strengen betyder.
Avatar billede jensgram Nybegynder
30. august 2007 - 20:29 #4
Ja, jeg bør måske også give min fortolkning med (og dermed; grundlaget for ovenstående RE):

64.224000 # Decimaltal
11.376000,1 # Evt. i par
-777.0,39324.6372144 # ... og kan være negative
30-aug-07 # Dato
15:17:35 # 00-23 etc.
Avatar billede nielle Nybegynder
11. september 2007 - 12:52 #5
Hvad med noget respons?
Avatar billede nielle Nybegynder
07. oktober 2007 - 10:54 #6
??
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester