Metoda substring v Javě se používá k extrakci podřetězce z většího řetězce. Existují dva různé způsoby, jak ji použít: buď oddělením řetězce od indexu až do konce, nebo s předem definovaným počátečním a koncovým indexem pro podřetězec.

Co je metoda Java substring a jak se používá?

V jazyce Java lze znaky, číslice a speciální znaky kombinovat do řetězce Java. Pokud chcete z většího řetězce extrahovat konkrétní podmnožinu, máte několik možností. Metoda Java String.split() rozdělí celý řetězec na jednotlivé části, aby vám například poskytla jasnější přehled o řetězci. Metoda substring() jde ještě o krok dále a vrací pouze tu část řetězce, kterou definujete. Část řetězce, kterou chcete extrahovat, můžete definovat pouze pomocí počátečního indexu nebo pomocí počátečního i koncového indexu. V tomto tutoriálu představíme metodu Java substring() v jejích různých formách.

Jak používat Java substring() s beginIndex

Jak již bylo zmíněno výše, existují dva způsoby, jak použít metodu Java substring(). První z nich definuje pouze počáteční bod podřetězce, který chcete extrahovat. Rozdělí řetězec od tohoto indexu až po poslední znak řetězce. Jeho syntaxe vypadá následovně:

String substring(int beginIndex)
java

Chcete-li použít substring(), nejprve zadejte řetězec, ze kterého chcete extrahovat podřetězec. Poté pomocí celého čísla definujte, kde má podřetězec začínat. Výstup můžete zobrazit pomocí příkazu Java System.out.println. Metoda funguje inkluzivně, což znamená, že znak, který se nachází na pozici zadaného indexu, bude také oddělen. Pokud je hodnota beginIndex menší než 0 nebo větší než skutečná délka řetězce, zobrazí se chybová zpráva.

Podívejme se na jednoduchý příklad, abychom viděli, jak přesně funguje substring() v Javě. Vytvoříme řetězec a poté z něj extrahujeme podřetězec.

public class Main {
	public static void main(String args[]) {
	String Str = new String("This is an example. This is another sentence.");
	System.out.print("The substring is: ");
	System.out.println(Str.substring(20));
	}
}
java

Po spuštění kódu získáte následující výstup:

The substring is: This is another sentence.
java

Samozřejmě to funguje stejně dobře i s číslicemi:

public class Main {
	public static void main(String args[]) {
	String Str = new String("192.448.782.1142");
	System.out.print("The last four digits are: ");
	System.out.println(Str.substring(12));
	}
}
java

Zde je výstup:

The last four digits are: 1142
java

Jak používat substring() s beginIndex a endIndex

Druhý způsob použití metody Java substring() umožňuje větší kontrolu nad výsledným podřetězcem. Určíte nejen počáteční bod podřetězce, ale také koncový bod. Syntaxe vypadá následovně:

String substring(int beginIndex, int endIndex)
java

Číslo beginIndex je inkluzivní a číslo endIndex je exkluzivní. Podívejme se ještě jednou na jednoduchý příklad:

public class Main {
	public static void main(String args[]) {
	String Str = new String("This is an example. This is another sentence.");
	System.out.print("The substring is: ");
	System.out.println(Str.substring(8, 18));
	}
}
java

Výstup je:

The substring is: an example
java

Můžete také snadno extrahovat podřetězec z jednoho slova. V dalším příkladu vytvoříme nákupní seznam:

public class Main {
	public static void main(String args[]) {
	String Str = new String("Eggs, Honey, Milk, Bread");
	System.out.print("The substring is: ");
	System.out.println(Str.substring(7, 10));
	}
}
java

Nový výstup bude vypadat následovně:

The substring is: one
java

V našem posledním příkladu ukážeme praktické použití metody Java substring(). Představte si, že jste obdrželi údaje o zákaznících v určitém formátu. Pokud chcete izolovat pouze část těchto informací, je substring() ideální. Podívejme se na kód:

public class Main {
	public static void main(String args[]) {
	String Str = new String("247: Taylor, Javal|taylorj@example.com|London|12.04.1972");
	System.out.print("Here is the customer’s email address: ");
	System.out.println(Str.substring(19, 38));
	}
}
java

Zde je výstup:

Here is the customer’s email address: taylorj@example.com
java
Přejít do hlavního menu