Open In App

Split() String method in Java with examples

The string split() method breaks a given string around matches of the given regular expression. After splitting against the given regular expression, this method returns a string array.

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

Following are the two variants of the split() method in Java: 



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

Parameters

Returns 

An array of strings is computed by splitting the given string.

Exception Thrown

PatternSyntaxException – if the provided regular expression’s syntax is invalid.  



The limit parameter can have 3 values 

Here’s how it works:

Let the string that is to be split is – geekss@for@geekss

Regex   Limit   Result
@ 2 {“geekss”, ”for@geekss”}
@ 5 {“geekss”, ”for”, ”geekss”} 
@ -2 {“geekss”, ”for”, ”geekss”}
s     5 {“geek”, ”“, “@for@geek”, “”, “”}
s     -2 {“geek”, ” “, ” “, “@for@geek”, “”, “”}
s     0 {“geek”, ””, ”@for@geek”}

Following are the Java example codes to demonstrate the working of split()
 
Example 1:




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

Output
geekss
for@geekss

Example 2:  




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

Output
geekss
for
geekss

Example 3:  




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

Output
geekss
for
geekss

Example 4:  




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

Output
geek

@for@geek


Example 5:  




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

Output
geek

@for@geek


Example 6:  




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

Output
geek

@for@geek

2. public String[] split(String regex)

This variant of the split method takes a regular expression as a parameter and breaks the given string around matches of this regular expression regex. Here, by default limit is 0.

Parameters

regex – a delimiting regular expression

Returns

An array of strings is computed by splitting the given string.

Exception Thrown

PatternSyntaxException – if the provided regular expression’s syntax is invalid.  

Here are some working example codes:
 
Example 1:




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

Output
GeeksforGeeks
A Computer Science Portal

Example 2:




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

Output
Geeks
Geeks
Students

It can be seen in the above example that the pattern/regular expression “for” is applied twice (because “for” is present two times in the string to be split)

Example 3:  




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

Output
Geeks
for
Geeks

Example 4:




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

Output
Geeks
for
Geeks

 Example 5: 




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

Output
Geek

In the above example, trailing empty strings are not included in the resulting array arrOfStr.

Example 6:  




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

Output
Geeks

Geeks
   

In the above example, the trailing spaces (hence not empty string) become a string in the resulting array arrOfStr.
 
Example 7:  




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

Output
word1
word2
word3
word4
word5
word6

In the above example, words are separated whenever either of the characters specified in the set is encountered.


Article Tags :