使用不同的表达式拆分字符串

时间:2018-05-18 12:04:56

标签: java arrays json string split

我需要分割一个字符串,但是使用表达式"},{"而不只是一个字符,就像我在另一个问题上看到的那样。这是我要分开的字符串:

{"Id":"620e1fe3f6f0b48fd385edebdc5896e4865d0c8a1a49ca24b9f8b08a4a1bc17e","Names":["/delete2alpine"],"Image":"alpine","Command":"/bin/sh"},{"Id":"dfc8494f4b9cc3a409a01032906431b54a2d88bb06b4fed26ede0eb8a37c41a9","Names":["/deletealpine"],"Image":"alpine","Command":"/bin/sh"}

我想将其分为"},{",我尝试使用String.split();它只是给我一个错误的数组。

2 个答案:

答案 0 :(得分:1)

String.split()采用正则表达式参数,您所需的分隔符},{包含正则表达式的特殊字符。您需要按如下方式引用分隔符:

str.split(Pattern.quote("},{"));

这需要导入模式:

import java.util.regex.Pattern;

答案 1 :(得分:0)

你也可以双重逃避开口大括号:

str.split("},\\{");

如果你没有逃脱开口的花括号,那么repetition就是一个意义。

Test