Рядковий метод Split() у Java з прикладами

The string split() метод розриває заданий рядок навколо збігів заданого регулярного виразу. Після розбиття на заданий регулярний вираз цей метод повертає рядковий масив.

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

Нижче наведено два варіанти методу split() у Java:

1. Public String [] split ( String regex, int limit)

Параметри

    регулярний вираз – розмежувальний регулярний вираз Limit – кінцевий поріг

Повернення

Масив рядків обчислюється шляхом розбиття заданого рядка.

Створено виняток

PatternSyntaxException – якщо наданий синтаксис регулярного виразу недійсний.

Параметр обмеження може мати 3 значення

    limit> 0 – якщо це так, то шаблон буде застосовано щонайбільше limit-1 разів, довжина результуючого масиву не перевищуватиме n, а останній запис результуючого масиву міститиме всі вхідні дані за межами останнього зіставленого шаблону. limit <0 – у цьому випадку візерунок буде застосовано стільки разів, скільки можливо, і отриманий масив може бути будь-якого розміру. limit = 0 – у цьому випадку шаблон буде застосовано стільки разів, скільки можливо, отриманий масив може бути будь-якого розміру, а кінцеві порожні рядки буде відкинуто.

Ось як це працює:

Нехай рядок, який потрібно розділити, є – geekss@for@geekss

Регулярний вираз Ліміт Результат
@ 2 {geekss, for@geekss}
@ 5 {geekss, для, geekss}
@ -2 {geekss, для, geekss}
с 5 {виродок, , @for@geek, , }
с -2 {виродок, , , @for@geek, , }
с 0 {виродок, , @for@geek}

Нижче наведено приклади кодів Java для демонстрації роботи split()

Приклад 1:

Java




// 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);> > }> }>

Вихід

geekss for@geekss 

приклад 2:

Java




// 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);> > }> }>

Вихід

geekss for geekss 

приклад 3:

Java




// 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);> > }> }>

Вихід

geekss for geekss 

Приклад 4:

Java




// 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);> > }> }>

Вихід

geek @for@geek 

Приклад 5:

Java




// 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);> > }> }>

Вихід

geek @for@geek 

Приклад 6:

Java




// 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);> > }> }>

Вихід

geek @for@geek 

2. public String[] split (рядковий регулярний вираз)

Цей варіант методу розділення приймає регулярний вираз як параметр і розбиває заданий рядок навколо збігів цього регулярного виразу. Тут за замовчуванням обмеження дорівнює 0.

Параметри

регулярний вираз – розмежувальний регулярний вираз

Повернення

Масив рядків обчислюється шляхом розбиття заданого рядка.

Створено виняток

PatternSyntaxException – якщо наданий синтаксис регулярного виразу недійсний.

Ось деякі робочі приклади кодів:

Приклад 1:

Java




// 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);> > }> }>

Вихід

techcodeview.com A Computer Science Portal 

приклад 2:

Java




// 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);> > }> }>

Вихід

Geeks Geeks Students 

У наведеному вище прикладі можна побачити, що шаблон/регулярний вираз for застосовано двічі (оскільки for присутній двічі в рядку, який потрібно розділити)

приклад 3:

Java




// 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);> > }> }>

Вихід

Geeks for Geeks 

Приклад 4:

Java




// 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);> > }> }>

Вихід

Geeks for Geeks 

Приклад 5:

Java




// 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);> > }> }>

Вихід

Geek 

У наведеному вище прикладі кінцеві порожні рядки не включені в результуючий масив arrOfStr.

Приклад 6:

Java




// 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);> > }> }>

Вихід

Geeks Geeks 

У наведеному вище прикладі кінцеві пробіли (отже, не порожній рядок) стають рядком у результуючому масиві arrOfStr.

Приклад 7:

Java




// 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);> > }> }>

Вихід

word1 word2 word3 word4 word5 word6 

У наведеному вище прикладі слова розділяються щоразу, коли зустрічається один із символів, указаних у наборі.