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);> >}> }> |
>
>
ітератор java картиВихід
geekss for geekss>
Приклад 4:
Java
масив c рядок
// 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);> >}> }> |
>
перевертання рядка в java
>Вихід
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
// 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>
У наведеному вище прикладі слова розділяються щоразу, коли зустрічається один із символів, указаних у наборі.