Comment scinder une chaîne basée sur un modèle à l'aide de regex

J'ai du mal à le fractionnement de la chaîne basée sur les regex.

String str = "1=(1-2,3-4),2=2,3=3,4=4";
Pattern commaPattern = Pattern.compile("\\([0-9-]+,[0-9-]+\\)|(,)") ;
String[] arr = commaPattern.split(str);
for (String s : arr)
{
    System.out.println(s);
}

Les résultats attendus,

1=(1-2,3-4)     
2=2    
3=3    
4=4

De sortie réelle,

1=

2=2
3=3
4=4
Regex ne va pas le résoudre pour vous. Vous avez besoin d'un analyseur. Vous avez besoin d'un analyseur.
il n'est pas nécessaire de l'analyseur pour un simple problème..analyseur serait un overkill

OriginalL'auteur prasanth | 2013-03-29