...
Selvom å bruke indexOf() er svært allsidig, kan det være noe tungvint når man kun skal dele opp en streng i flere deler. Dette gjør split() i løpet av en linje. Du definerer kun en String som den deler opp strengen din utifra. ( Du bruker egentlig et spesielt mønster, regular expression. Den har en svært komplisert struktur, men dette er ikke nødvending å kunne)her vil vi bruke noe enkle, men svært nyttige versjoner av den.
Code Block | ||||
---|---|---|---|---|
| ||||
// som sist ønsker vi en liste med hvert enkelt navn som et element String name = "Knut Ola Hagen Nordmann"; String[] list = name.split(" ");//list inneholder nå: [Knut, Ola, Hagen, Nordmann] //ovenfor var den enkleste utgaven, man kan også splitte på så lange strenger man ønsker String dager = "MandagTirsdagOnsdagTorsdagFredagLordagSondag"; list = dager.split("dag"); //list inneholder nå: [Man, Tirs, Ons, Tors, Fre, Lor, Son] // "."(punktum) representer alle symboler. og flere kan brukes etterhverandre og forskjellige steder i en string list = dager.split(".dag"); //list inneholder nå: [Ma, Tir, On, Tor, Fr, Lo, So] list = dager.split("..dag"); //list inneholder nå: [M, Ti, O, To, F, L, S] //slike spesielle symboler som punktum må "escapes", dvs å sifra til regex-tolkeren at vi vil bruke dens faktiske verdi ved å bruke "\."(backslash) String ntnu = "ntnu.no"; list = ntnu.split("\."); // Dette vil ikke java compileren godta, ettersom den også bruker backslash til å "escape", derfor må vi legge til enda en backslash list = ntnu.split("\\."); // list inneholder nå: [ntnu, no] //vi kan også dele opp en string med forskjellige bokstaver String email = "olanordmann@ntnu.no"; list = email.split("[an]"); //her splittes det på både a og n, list inneholder nå: [ol, , ordm, , , @, t, u., o, ] //en litt mer nyttigere versjon list = email.split("[@\\.]"); // list inneholder nå: [olanordmann, ntnu, no] |
Utforsk linken ovenfor for flere nyttige måter å skrive en regex string på.
Behandle en e-post
Man vil ofte komme bort i e-poster som en systemutvikler. Det kan være mye forskjellig som må gjøres med den. Her er noen eksempler. Vi bruker klassen StringBuilder til å effektiv bygge opp en streng.
...