cannot understand the use of split in java
<p>my code is:-</p>

<pre><code>class SplitString {
    public static void main(String[] args) {
        Pattern p;
        String test = "a1b2c3";
        String[] token1 = test.split("\\d");
        System.out.println("first case : " + token1.length);

        for (String s : token1)
            System.out.print(s + " ");

        String[] token2 = test.split("\\b");
        System.out.println("\n\nsecond case : " + token2.length);

        for (String s : token2)
            System.out.print(s + " ");

        String[] token3 = test.split("\\a");
        System.out.println("\n\nthird case : " + token3.length);

        for (String s : token3)
            System.out.print(s + " ");
    }
}
</code></pre>

<p>Output:-</p>

<pre><code>first case : 3
a b c

second case : 2
 a1b2c3

third case : 1
a1b2c3
</code></pre>

<p>I am new to java and trying to execute split but cannot able to grasp its concept since all cases have different answers but what exactly the difference between them?</p>
