Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: added a deeper regex explenation

...

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
languagejava
titlesplit()
// 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.

...