Java 分割分隔符上的数组,但保留部分分隔符

Java 分割分隔符上的数组,但保留部分分隔符,java,regex,Java,Regex,我正在尝试拆分以下分隔符}--{上的字符串,但我希望保留大括号 例如: "{this}--{is}--{an}--{example}" --> ["{this}","{is}","{an}","{example}"] 我无法单独拆分--序列,因为某些单独的元素将具有此序列。在Java中这可能吗?由于您希望保留部分分隔符,请将希望保留的部分放入,如下所示: String[] parts = str.split("(?<=\\})--(?=\\{)"); String[]parts

我正在尝试拆分以下分隔符
}--{
上的字符串,但我希望保留大括号

例如:

"{this}--{is}--{an}--{example}"  --> ["{this}","{is}","{an}","{example}"]

我无法单独拆分
--
序列,因为某些单独的元素将具有此序列。在Java中这可能吗?

由于您希望保留部分分隔符,请将希望保留的部分放入,如下所示:

String[] parts = str.split("(?<=\\})--(?=\\{)");

String[]parts=str.split((?为什么不将您的分隔符更改为一个不会出现在您的序列中的字符串,如|@或某个奇怪的组合?或者信息是以这种格式传递给您的?如何,首先拆分,然后根据需要连接前缀和后缀?是时候启动您的正则表达式了。)@RyanWilson这是一个选项,尽管我最初遇到这种情况是因为我假设我收到的数据不会有任何
--
作为开始。我认为更长的乱码分隔符会起作用。