我有一个这样的字符串:
String str = "[a,b,c,d],[1,2,3,4],[a,gf,d,cvb],[4,3,2,1]";
我想将这个字符串拆分为四个部分,如下所示:
[A,B,C,d]
[1,2,3,4]
并[a,GF,d,CVB]
[4,3,2,1]
我试过了:
List<String> splitWords = Arrays.asList(str.split("\\],\\["));
当我使用它时,我得到以下字符串:
[A,B,C,d
1,2,3,4
一,GF,d,CVB
4,3,2,1]
在这种情况下,我还会删除逗号旁边的括号,但我不想这样做。我的问题的正则表达式是什么?
答案 0 :(得分:0)
试试这个:
List<String> splitWords = Arrays.asList(str.split("],"));
for(int i = 0; i < splitWords.size()-1; i++)
splitWords.set(i, splitWords.get(i) + "]");
答案 1 :(得分:0)
这个正则表达式可以做你想要的:
<强> “[(。*)〕”强>
String str = "[a,b,c,d],[1,2,3,4],[a,gf,d,cvb],[4,3,2,1]";
Pattern logEntry = Pattern.compile("\\[(.*?)\\]");
Matcher matchPattern = logEntry.matcher(str);
while (matchPattern.find()) {
System.out.println("[" + matchPattern.group(1) + "]");
}
将打印:
[a,b,c,d]
[1,2,3,4]
[a,gf,d,cvb]
[4,3,2,1]
这就是你要找的......