Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Uttrekking av Informasjon fra Strenger i Java | Strenger
Introduksjon til Java

Uttrekking av Informasjon fra Strenger i Java

Sveip for å vise menyen

Når du arbeider med tekst i virkelige applikasjoner, trenger du sjelden hele strengen — som regel trenger du bare en liten del av den. Et navn inne i en e-post, et produkt i en bestillingsmelding, eller et spesifikt nøkkelord skjult i en setning. Java gir oss enkle, men kraftige verktøy for å hente ut akkurat det vi trenger.

substring()

Hvis du trenger å ta et "utdrag" av en streng basert på tegnposisjoner, bruk .substring(). Den benytter nullindeksering — tellingen starter fra 0. Den returnerer en ny String.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; String drinkName = order.substring(6, 11); System.out.println(drinkName); } }

substring(6, 11) forteller Java å starte på indeks 6 (inkludert) og stoppe rett før indeks 11 (ekskludert) — henter ut tegnene på posisjonene 6 til og med 10, som gir oss "Latte".

Hvis du bruker substring(start) med bare ett argument, henter Java ut alt fra den posisjonen til slutten av strengen:

order.substring(6); // "Latte with oat milk"

indexOf()

Hvis du trenger å finne hvor en bestemt tekst befinner seg i en streng, bruk .indexOf(). I stedet for å kutte tekst, lokaliserer den teksten. Den returnerer en int som representerer startindeksen til treffet.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; int lattePosition = order.indexOf("Latte"); System.out.println(lattePosition); } }

Java skanner strengen fra venstre mot høyre til den finner "Latte" og returnerer posisjonen til det første tegnet — 6. Hvis teksten ikke finnes noe sted i strengen, returnerer Java -1.

Kombinere begge — ekte eksempel

Dette virkelige eksempelet kombinerer indexOf() og substring() for å hente ut et brukernavn fra en e-postadresse.

Main.java

Main.java

1234567891011121314
package com.example; public class Main { public static void main(String[] args) { String customerEmail = "anna.coffee@gmail.com"; int atPosition = customerEmail.indexOf("@"); String username = customerEmail.substring(0, atPosition); System.out.println(username); } }

indexOf("@") finner posisjonen til @-symbolet, deretter trekker substring(0, atPosition) ut alt fra starten av strengen opp til — men ikke inkludert — @. Resultatet er "anna.coffee". I stedet for å hardkode posisjoner, lar vi Java finne grensen og trekke ut nøyaktig det vi trenger.

question mark

Hva gjør substring(start, end) i Java?

Velg det helt riktige svaret

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 7

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Uttrekking av Informasjon fra Strenger i Java

Når du arbeider med tekst i virkelige applikasjoner, trenger du sjelden hele strengen — som regel trenger du bare en liten del av den. Et navn inne i en e-post, et produkt i en bestillingsmelding, eller et spesifikt nøkkelord skjult i en setning. Java gir oss enkle, men kraftige verktøy for å hente ut akkurat det vi trenger.

substring()

Hvis du trenger å ta et "utdrag" av en streng basert på tegnposisjoner, bruk .substring(). Den benytter nullindeksering — tellingen starter fra 0. Den returnerer en ny String.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; String drinkName = order.substring(6, 11); System.out.println(drinkName); } }

substring(6, 11) forteller Java å starte på indeks 6 (inkludert) og stoppe rett før indeks 11 (ekskludert) — henter ut tegnene på posisjonene 6 til og med 10, som gir oss "Latte".

Hvis du bruker substring(start) med bare ett argument, henter Java ut alt fra den posisjonen til slutten av strengen:

order.substring(6); // "Latte with oat milk"

indexOf()

Hvis du trenger å finne hvor en bestemt tekst befinner seg i en streng, bruk .indexOf(). I stedet for å kutte tekst, lokaliserer den teksten. Den returnerer en int som representerer startindeksen til treffet.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; int lattePosition = order.indexOf("Latte"); System.out.println(lattePosition); } }

Java skanner strengen fra venstre mot høyre til den finner "Latte" og returnerer posisjonen til det første tegnet — 6. Hvis teksten ikke finnes noe sted i strengen, returnerer Java -1.

Kombinere begge — ekte eksempel

Dette virkelige eksempelet kombinerer indexOf() og substring() for å hente ut et brukernavn fra en e-postadresse.

Main.java

Main.java

1234567891011121314
package com.example; public class Main { public static void main(String[] args) { String customerEmail = "anna.coffee@gmail.com"; int atPosition = customerEmail.indexOf("@"); String username = customerEmail.substring(0, atPosition); System.out.println(username); } }

indexOf("@") finner posisjonen til @-symbolet, deretter trekker substring(0, atPosition) ut alt fra starten av strengen opp til — men ikke inkludert — @. Resultatet er "anna.coffee". I stedet for å hardkode posisjoner, lar vi Java finne grensen og trekke ut nøyaktig det vi trenger.

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 7
some-alt