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,A
2,B
3,C
是一对。所以A
不应该与C
结合如果1
与2
结合
我明白了,所以@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拆分字符串并合并的主要内容,如果未能解决你的问题,请参考以下文章