0
我有以下字符串:Java的正則表達式小組賽 - 字符串沒有空格
{"asdasdasdsd"["$[day()]$"],"asdasd":"$[time()]$","day":"$[day()]$","asdasdasd":["$[random(4,5)]$"]}
我想我的前綴和後綴裏面的字符串。 的問題是,該字符串不空格,所以我只能得到一組:
private String prefix = "\\$\\["; //$[
private String suffix = "\\]\\$"; //]$
private String regexString = prefix + ".*" + suffix;
try {
Pattern regex = Pattern.compile(regexString);
Matcher regexMatcher = regex.matcher(json);
while (regexMatcher.find()) {
System.out.println(regexMatcher.start()+ ": " + regexMatcher.group());
for (int i = 1; i <= regexMatcher.groupCount(); i++) {
System.out.println(regexMatcher.group(i));
System.out.println(regexMatcher.start(i));
System.out.println(regexMatcher.end(i));
}
}
} catch (PatternSyntaxException ex) {
ex.printStackTrace();
}
輸出爲:
17: $[day()]$"],"asdasd":"$[time()]$","day":"$[day()]$","asdasdasd":["$[random(4,5)]$
我所要的輸出是:
day()
time()
day()
random(4,5)
我該如何處理?