Java按字将行拆分为2行
我得到了这两行,其中第二行在“a”之后有一个制表符Java按字将行拆分为2行,java,split,Java,Split,我得到了这两行,其中第二行在“a”之后有一个制表符 a b C d a[tab]b c d 我想要的结果是: First Line: "a", " bcd" Second Line: "a", "[tab]b c d" 我只需要使用一个拆分函数,并且我已经尝试了拆分(\\s+”,2),但它没有按预期工作。您必须使用“\t”进行拆分,因为\t用于制表符\s表示任何空格,因此它包含空格。要保留选项卡或空格,您需要使用“向前看”,并按如下方式拆分: String[] split =
a b C d
a[tab]b c d
我想要的结果是:
First Line: "a", " bcd"
Second Line: "a", "[tab]b c d"
我只需要使用一个拆分函数,并且我已经尝试了
拆分(\\s+”,2)
,但它没有按预期工作。您必须使用“\t”进行拆分,因为\t用于制表符\s表示任何空格,因此它包含空格。要保留选项卡或空格,您需要使用“向前看”,并按如下方式拆分:
String[] split = input.split("(?=\\s+)", 2);
完整演示:
List<String> inputs = Arrays.asList("a b C d", "a b c d");
for (String input : inputs) {
String[] split = input.split("(?=\\s+)", 2);
for (String part : split) {
System.out.format("Split string is '%s'%n", part);
}
}
试试这个
String[] a = s.split("(?<=^\\w+)\\s+");
String[]a=s.split(“(?”它没有按预期工作”)并没有告诉我们它做了什么…split(\\s+”,2)给我这个结果:第一行:“a”,“bcd”第二行:“a”,“b c d”“Mike,给出一个例子并不是问题的充分定义。你也可以解释你想要如何分割。正如你从@BheshGurung中可以看到的,这很容易有多个解释,不同的例子会产生不同的结果,但这个例子的结果相同。如果我使用”\t,您好”,我会得到>第一行:“abcd”>第二行:“a”,“b c d”他想在空格或制表符上拆分,\s
在这里就可以了。谢谢。这就是我想要的。@mike了解更多信息,以及你问题的大意:
String[] a = s.split("(?<=^\\w+)\\s+");