Java在第一个换行符上分隔字符串



在检测字符串

中的第一个换行符时,是否有任何有效的方法将字符串分成两个?例如

,字符串像这样:

String str = "line 1n"+
             "line 2n"+
             "line 3n";

所以我要做的就是把"line 1"从字符串中分离出来,其余的作为另一个字符串,所以最后的结果如下:

string1 = "line 1";
string2 = "line 2n"+
          "line 3n";

可以使用String类的split(regex,limit)方法。试着

String[] result = yourString.split("n", 2);

如果你想使用与操作系统相关的行分隔符

String[] result = yourString.split(System.lineSeparator(), 2);

或操作系统独立方式

//since Java 8
String[] result = yourString.split("\R", 2);
//before Java 8
String[] result = yourString.split("rn|r|n", 2);
现在

result[0] = "line 1";
result[1] = "line 2nline 3n";

尝试使用String.substring()

String str23 = "line 1 n line 2 n line3 n";
String line1 = str23.substring(0, str23.indexOf("n"));
String line2 = str23.substring(str23.indexOf("n")+1, str23.length());
System.out.println(line1+"-----"+line2);
String str = "line 1n line 2n line 3n";
int newLineIndex = str.indexOf("n");
String first = str.substring(0, newLineIndex);
String rest = str.substring(newLineIndex + 1);

最新更新