Avatar billede cdull Nybegynder
04. maj 2006 - 11:02 Der er 13 kommentarer og
1 løsning

String splittes til collection

Jeg har den her streng på omkring 1400-1500 tegn. eks. "jnjnjnnjjn"
Den vil jeg gerne have splittet op i en collection med hvert tegn for sig. samt en anden værdi bagved. f.eks ["j"][id] hvad ved jeg.

Hvordan gør jeg dette bedst så jeg kan søge i collection, hente ud, ændre i det osv.
Avatar billede snepnet Nybegynder
04. maj 2006 - 11:25 #1
hmmm... du kommer nok til at komme med et par ekstra kommentarer. hvis du har 1400-1500 tegn, hvad skal der så komme ud af col["j"][id] ? (der kan vel være mange j'er i din tekst).
der er masser af muligheder for at arbejde med strings. dels er der indbyggede muligheder på stringobjekter, men der klassen String har også statiske metoder du kan arbejde med.
Regulære udtryk er også en mulighed.
Desuden kan du som udgangspunkt indexere dig ind i en string
char c = someString[21];
og du kan så også iterere over chars i din string:
foreach(char c in someString)
{
  // gør hvad du vil med din char
}

hvis du benytter 2.0 har du også nogle gode (nemme) muligheder for at lave præcis den type af collection eller dictionary som du vil.
mvh
Avatar billede cdull Nybegynder
04. maj 2006 - 11:32 #2
der kan kun være et j eller n i et item.
Det er lavet som en kalender. ["j"][dato] hvor 1400-1500 er antallet af dage.
hver item skal så være en dag hvor j/n er værdien for den dag. f.eks ja nej. samt datoen.
Jeg skal så ud fra den streng løbe den igennem,og tilføje dage til en kalender.
noget i den stil :)
Avatar billede snepnet Nybegynder
04. maj 2006 - 11:55 #3
bruger du 2.0?
mvh
Avatar billede cdull Nybegynder
04. maj 2006 - 12:39 #4
nej, 1.1
Avatar billede snepnet Nybegynder
04. maj 2006 - 13:21 #5
det var da trist ... kan du ikke skifte?`
mvh
Avatar billede cdull Nybegynder
04. maj 2006 - 13:23 #6
Ville meget gerne. Kan desværre ikke.
Avatar billede snepnet Nybegynder
04. maj 2006 - 13:49 #7
Er det eneste du skal bruge - en samling hvor du har j og n som entrypoint, og et vilkårligt antal datoer tilknyttet hhv. j og n?
Mvh
Avatar billede cdull Nybegynder
04. maj 2006 - 14:06 #8
Jeg har leget lidt med det. Har en mininums dato,
int tal = 0;
foreach(char c in somestring)
{
herunder vil jeg gerne have de to ting der lagt i en collection af en art.
så dato og værdien er at finde, og kan hentes ud igen ved hjælp af datoen.
minimumdato.adddays(tal);
c.tostring();
tal++;
}
Avatar billede snepnet Nybegynder
04. maj 2006 - 14:52 #9
En HashTable er en generisk liste du godt kan benytte til den slags:

HashTable ht = new HashTable();
int tal = 0;
foreach(char c in somestring)
{
  ht.Add(minimumdato.adddays(tal++), c);
}

Men det så ikke typestærk eller noget...

Mvh
Avatar billede cdull Nybegynder
04. maj 2006 - 14:54 #10
lyder som det jeg skal bruge.
det går nok hvis den ikke er typestærk.

hvorfor er det den hedder hashtabel(offtopic)
Avatar billede snepnet Nybegynder
04. maj 2006 - 15:07 #11
Den baserer sin indexering på hashværdier af nøglerne, hvilket så igen betyder at du ikke kan forudsætte noget omkring rækkefølgen af dine elementer i listen.
mvh
Avatar billede cdull Nybegynder
04. maj 2006 - 23:39 #12
smid lige et svar. og tak for hjælpen.
Avatar billede snepnet Nybegynder
05. maj 2006 - 08:18 #13
var så lidt.
mvh
Avatar billede snepnet Nybegynder
05. maj 2006 - 08:23 #14
Og et svar :o)
mvh
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