关于java正则表达式请教

java中如何匹配大括号中逗号隔开的内容,如:
abcdef{123,abc-1,'xxx'},匹配结果123 abc-1 'xxx'三个值。

直接通过逗号分隔不行么

只是有逗号.可以试试直接split.或者substring.


import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Test {
    public static void main(String[] args) {
        String s = "abcdef{123,abc-1,'xxx'}";
        Pattern p = Pattern.compile("\\{([^}]*)\\}");
        Matcher m = p.matcher(s);
        while (m.find()) {
            String str = m.group(1);//匹配到的结果
            String[] arr = str.split(",");//按逗号分开
            for(int i=0;i<arr.length;i++){
                System.out.println(arr[i]);
            }
        }
    }
}