public static void main(String[] args) { Pattern pattern=Pattern.compile("[\\{\\[\\]\\}]"); String a="{a:\"b\",c:[{d:\"e\",{f:\"g\",h:\"i\"}}]}";//示例 Pattern pattern1=Pattern.compile("\\{\\}"); Pattern pattern2=Pattern.compile("\\[\\]"); Matcher matcher=pattern.matcher(a); StringBuilder sb=new StringBuilder(); StringBuilder sb1=null; while(matcher.find()){ String d=matcher.group(0); System.err.println(d); sb.append(d); } if(sb.length()%2!=0){ System.err.println("error"); }else{ char[] cs=sb.toString().toCharArray(); for(int i=0;i<=sb.length()/2-1;i++){ sb1=new StringBuilder(); sb1.append(cs[i]).append(cs[sb.length()-1-i]); System.err.println("sb2="+sb1.toString()); Matcher matcher1=pattern1.matcher(sb1.toString()); Matcher matcher2=pattern2.matcher(sb1.toString()); while(matcher1.find()||matcher2.find()){ System.err.println("json結構匹配"); } } System.err.println("標籤數是對的"); } }