Java拆分字符串并合并

Posted

技术标签:

【中文标题】Java拆分字符串并合并【英文标题】:Java Split String and Combine 【发布时间】:2016-03-23 20:38:58 【问题描述】:

我想拆分一个字符串并将它们组合起来。

String value = "1,A 2,B 3,C"

输出

[1,2 A,B]
[1,3 A,C]
[2,3 B,C]

如果我这样做 String[] tokens = value.split("[,\\s]+");tokens[0] = "1" tokens[1] = "A" tokens[2] = "2" tokens[3] = "B" 等等。 但是,我怎样才能将它组合成输出呢?谢谢。

【问题讨论】:

这里不是很清楚你的要求是什么。您是否想要所有可能的排列,例如,输出是否应该包括[1,3 B,C][1,2 A,C]?如果没有,为什么不呢? @DaveyDaveDave [1,3 B,C][1,2 A,C] 不是必需的。因为1,A2,B3,C是一对。所以A 不应该与C 结合如果12 结合 我明白了,所以@Satya 的评论将是一个好的开始,先在空格上分割(value.split("\\s")),然后你有你想要的对,然后你可以在逗号上再次分割,并适当配对。 【参考方案1】:

您可以通过这样做来拆分和合并它:

String a = value.charAt(0)+","+value.charAt(4)+" "+value.charAt(2)+","+value.charAt(6);
String b = value.charAt(0)+","+value.charAt(8)+" "+value.charAt(2)+","+value.charAt(10);
String c = value.charAt(4)+","+value.charAt(8)+" "+value.charAt(6)+","+value.charAt(10);

【讨论】:

使用这种方法,它是硬编码的。以上只是一个例子。对于我需要做的事情,字符串长度在我从文本文件中读取时会有所不同。

以上是关于Java拆分字符串并合并的主要内容,如果未能解决你的问题,请参考以下文章

正则表达式拆分并合并为单个记录

拆分2列中的特殊字符并在oracle中合并为多行

拆分 Accel 值字符串并保存拆分的内容 - Java

SQL数据处理,字符串先拆分后合并

c# 字符串拆分和合并

Spire.Cloud.SDK for Java 合并拆分Excel单元格