Metoda Split() String w Javie z przykładami

The podział ciągu() metoda przerywa dany ciąg wokół dopasowań danego wyrażenia regularnego. Po podzieleniu względem danego wyrażenia regularnego metoda ta zwraca tablicę ciągów.

Input String: 016-78967 Regular Expression: - Output : {'016', '78967'} 

Poniżej przedstawiono dwa warianty metody split() w Javie:

1. Publiczny ciąg [] split (String regex, int limit)

Parametry

    regex – ograniczające wyrażenie regularne Limit – wynikowy próg

Zwroty

Tablicę ciągów oblicza się poprzez podzielenie danego ciągu.

Zgłoszono wyjątek

WzórSkładniaWyjątek – jeśli składnia podanego wyrażenia regularnego jest nieprawidłowa.

Parametr limitu może mieć 3 wartości

    limit> 0 – W takim przypadku wzorzec zostanie zastosowany co najwyżej limit-1 razy, długość wynikowej tablicy nie będzie większa niż n, a ostatni wpis wynikowej tablicy będzie zawierał wszystkie dane wejściowe poza ostatnim dopasowanym wzorcem. limit <0 – W tym przypadku wzór zostanie zastosowany tyle razy, ile to możliwe, a wynikowa tablica może mieć dowolny rozmiar. limit = 0 – W tym przypadku wzorzec zostanie zastosowany tyle razy, ile to możliwe, wynikowa tablica może mieć dowolny rozmiar, a końcowe puste ciągi znaków zostaną odrzucone.

Oto jak to działa:

Niech ciąg, który ma zostać podzielony, to – maniak@dla@geekss

Wyrażenie regularne Limit Wynik
@ 2 {geekss, for@geekss}
@ 5 {geeks, dla, maniak}
@ -2 {geeks, dla, maniak}
S 5 {geek, , @dla@geek, , }
S -2 {geek, , , @dla@geek, , }
S 0 {geek, , @dla@geek}

Poniżej znajdują się przykładowe kody Java ilustrujące działanie funkcji split()

Przykład 1:

Jawa




// Java program to demonstrate working of split(regex,> // limit) with small limit.> public> class> GFG {> > // Main driver method> > public> static> void> main(String args[])> > {> > // Custom input string> > String str => 'geekss@for@geekss'> ;> > String[] arrOfStr = str.split(> '@'> ,> 2> );> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

geekss for@geekss 

Przykład 2:

Jawa




// Java program to demonstrate working of split(regex,> // limit) with high limit.> public> class> GFG {> > public> static> void> main(String args[])> > {> > String str => 'geekss@for@geekss'> ;> > String[] arrOfStr = str.split(> '@'> ,> 5> );> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

geekss for geekss 

Przykład 3:

Jawa




// Java program to demonstrate working of split(regex,> // limit) with negative limit.> public> class> GFG {> > public> static> void> main(String args[])> > {> > String str => 'geekss@for@geekss'> ;> > String[] arrOfStr = str.split(> '@'> , -> 2> );> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

geekss for geekss 

Przykład 4:

Jawa




// Java program to demonstrate working of split(regex,> // limit) with high limit.> public> class> GFG {> > public> static> void> main(String args[])> > {> > String str => 'geekss@for@geekss'> ;> > String[] arrOfStr = str.split(> 's'> ,> 5> );> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

geek @for@geek 

Przykład 5:

Jawa




// Java program to demonstrate working of split(regex,> // limit) with negative limit.> public> class> GFG {> > public> static> void> main(String args[])> > {> > String str => 'geekss@for@geekss'> ;> > String[] arrOfStr = str.split(> 's'> , -> 2> );> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

geek @for@geek 

Przykład 6:

Jawa




// Java program to demonstrate working of split(regex,> // limit) with 0 limit.> public> class> GFG {> > public> static> void> main(String args[])> > {> > String str => 'geekss@for@geekss'> ;> > String[] arrOfStr = str.split(> 's'> ,> 0> );> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

geek @for@geek 

2. publiczny podział ciągu [] (wyrażenie regularne)

Ten wariant metody split przyjmuje wyrażenie regularne jako parametr i rozdziela podany ciąg znaków wokół dopasowań tego wyrażenia regularnego. Tutaj domyślny limit wynosi 0.

Parametry

wyrażenie regularne – ograniczające wyrażenie regularne

Zwroty

Tablicę ciągów oblicza się poprzez podzielenie danego ciągu.

Zgłoszono wyjątek

WzórSkładniaWyjątek – jeśli składnia podanego wyrażenia regularnego jest nieprawidłowa.

Oto kilka działających przykładowych kodów:

Przykład 1:

Jawa




// Java program to demonstrate working of split()> public> class> GFG {> > public> static> void> main(String args[])> > {> > String str> > => 'techcodeview.com:A Computer Science Portal'> ;> > String[] arrOfStr = str.split(> ':'> );> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

techcodeview.com A Computer Science Portal 

Przykład 2:

Jawa




// Java program to demonstrate working of split()> public> class> GFG {> > public> static> void> main(String args[])> > {> > String str => 'techcodeview.comforStudents'> ;> > String[] arrOfStr = str.split(> 'for'> );> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

Geeks Geeks Students 

W powyższym przykładzie widać, że wzorzec/wyrażenie regularne for zostało zastosowane dwukrotnie (ponieważ for występuje dwukrotnie w ciągu znaków, który ma zostać podzielony)

Przykład 3:

Jawa




// Java program to demonstrate working of split()> public> class> GFG {> > public> static> void> main(String args[])> > {> > String str => 'Geeks for Geeks'> ;> > String[] arrOfStr = str.split(> ' '> );> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

Geeks for Geeks 

Przykład 4:

Jawa




// Java program to demonstrate working of split()> public> class> GFG {> > public> static> void> main(String args[])> > {> > String str => 'Geeks.for.Geeks'> ;> > String[] arrOfStr> > = str.split(> '[.]'> );> // str.split('.'); will give> > // no output...> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

Geeks for Geeks 

Przykład 5:

Jawa




// Java program to demonstrate working of split()> public> class> GFG {> > public> static> void> main(String args[])> > {> > String str => 'Geekssss'> ;> > String[] arrOfStr = str.split(> 's'> );> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

Geek 

W powyższym przykładzie końcowe puste ciągi nie są uwzględniane w wynikowej tablicy arrOfStr.

Przykład 6:

Jawa




// Java program to demonstrate working of split()> public> class> GFG {> > // Main driver method> > public> static> void> main(String args[])> > {> > String str => 'GeeksforforGeeksfor '> ;> > String[] arrOfStr = str.split(> 'for'> );> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

Geeks Geeks 

W powyższym przykładzie końcowe spacje (a więc nie pusty ciąg znaków) stają się ciągiem w wynikowej tablicy arrOfStr.

Przykład 7:

Jawa




// Java program to demonstrate working of split()> // using regular expressions> public> class> GFG {> > public> static> void> main(String args[])> > {> > String str => 'word1, word2 word3@word4?word5.word6'> ;> > String[] arrOfStr = str.split(> '[, ?.@]+'> );> > for> (String a : arrOfStr)> > System.out.println(a);> > }> }>

Wyjście

word1 word2 word3 word4 word5 word6 

W powyższym przykładzie słowa są oddzielane za każdym razem, gdy napotkany zostanie którykolwiek ze znaków określonych w zestawie.