Avatar billede dl Nybegynder
26. september 2006 - 23:15 Der er 8 kommentarer og
1 løsning

String, og opdeling

jeg har set sådan et lille problem her:
ved dog ikke om det er i den rigtig gruppe, men det er dog .net jeg snakker om.

jeg har en string som ser sådan ud.

Sep 02 06 23:50:47 [navn] parameter1="den" parameter2=43 parameter3="yes med det"

hvordan får jeg paset denne string, til noget som liner et Obj, med alle de dejlige get metoder :)

Jeg ved godt, at jeg kunne lave omkring 100 linie-kode, hvor jeg deler alt op og klipper og kliser, men der må da være en bedre måde :)

Dennis
Avatar billede dl Nybegynder
26. september 2006 - 23:17 #1
fik jeg sag, at:

[navn]  dens lenght kan ændre sig.
og parameter i " "  skal i en String og parameter uden "  skal være tal :)

bare for at gøre det mere besværlig :)
Avatar billede davidfossil Nybegynder
26. september 2006 - 23:43 #2
Jeg er lidt i tvivl hvor du vil hen her. Regular expressions er nok et godt bud på en metode til at parse strengen og udtrække variabler af denne. Er det hvad du søger?
Avatar billede dl Nybegynder
27. september 2006 - 09:34 #3
jeg har et lille program, som laver nogle log, som ser sådan ud : Sep 02 06 23:50:47 [navn] parameter1="den" parameter2=43 parameter3="yes med det"


og så er jeg ved at lave sådan et lille program, som kan lave denne String om, til et Obj, så det bliver ment at arbejde med.


Hvordan kan jeg lave et expression, så jeg kan holde mig inden for "" eller bare tage et værdi tal.
Avatar billede stefan_v Nybegynder
29. september 2006 - 15:26 #4
Ved ikke om jeg har forstået ret, men ellers (eks. fejlhåndtering...):

string text "Sep 02 06 23:50:47 [navn] parameter1=\"den\" parameter2=43 parameter3=\"yes med det\"";
string[] values = text.Split(char[]{' '});

MyObj myObj = new MyObj();
myObj.Month = values[0];
myObj.Day = values[1];
myObj.Time = values[2];
myObj.Name = values[3];
myObj.Param1 = values[4].Substring(values[3].LastIndexOf("="), values[4].Length); //... Her knækker strengen...
Hvilken datatype har Param1? Object?

Men Gud nåde og trøste dig, hvis der mangler en værdi -> IndexOutOfBoundsException :)
Avatar billede stefan_v Nybegynder
29. september 2006 - 15:28 #5
Glemte lige:
.Replace("\"", "\"")
Efter
values[4].Substring(values[3].LastIndexOf("="), values[4].Length)

:)
Avatar billede dl Nybegynder
29. september 2006 - 16:41 #6
ja, noget i den stil, sp var bare ... om dervar en bedre måde at gøre det på, end at klippe og klister :S

// Dennis
Avatar billede dl Nybegynder
03. oktober 2006 - 09:22 #7
jeg kan høre at folk, kun kan komme med de svar som jeg kender:
at klipe skister, mv.
så jeg er ikke kommer vidre på dette område.

stefan_v, hvis du vil have nogle point, så kom med et svar.

men det skal siges, at der ingen løsning er på mit sp.

//dl
Avatar billede stefan_v Nybegynder
03. oktober 2006 - 09:30 #8
Behold du bare dine point... Finten er nok at du selv laver en klasse, som gør alt det du vil have...
Avatar billede dl Nybegynder
03. oktober 2006 - 09:53 #9
hehe, k ... det er ellers ikke fordi jeg ikke vil dele dem ud :)
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
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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