0

こんにちは、次のjsonからguidのリストを返すJava構文の正規表現が必要です

{"status":0,"StressTest":[{"User":[
{"token":"0F6B271C-3D7B-4473-9B20-67E1B79778FD"},
{"token":"0FC5764C-37F3-4348-8AF9-B6A84EA578E1"},
{"token":"22ADCBA3-13FB-439C-BF0C-F383B87670DB"},
{"token":"22B5D91F-5F49-4F60-9165-5DA5241C0F37"},
{"token":"27D91B27-C2FA-4829-8434-10DF496EF139"},
{"token":"27DDD239-279C-46A1-91C7-19525624A495"}]}]}    

だから私はガイドだけを取り戻します

すべてのポインタをありがとう

4

2 に答える 2

0

これは正規表現を使用して行うことができますが、JSONパーサーを使用する方がはるかに優れています。それでも正規表現を使用したい場合は、次のように機能するはずです。

[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}

少なくとも、http://regexpal.com/のテストデータで機能します

于 2012-12-18T13:03:26.950 に答える
0

試す

String s = "{\"status\":0,\"StressTest\":[{\"User\":["
        + "{\"token\":\"27D91B27-C2FA-4829-8434-10DF496EF139\"}" +
        "{\"token\":\"27DDD239-279C-46A1-91C7-19525624A495\"}]}]}";
String[] a = s.split(".+\\[\\{\"User\":\\[|\\]}\\]}")[1].replaceAll("\"", "").replaceAll("\\{token:", "").split("}");
System.out.println(Arrays.toString(a));

出力

[27D91B27-C2FA-4829-8434-10DF496EF139, 27DDD239-279C-46A1-91C7-19525624A495]
于 2012-12-18T14:58:12.917 に答える