java 在第一个换行符处分隔字符串

标签 java string split

在检测字符串中的第一个换行符时,是否有任何有效的方法将字符串分成两部分

例如,字符串如下:

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

所以我想做的只是将“line 1”与字符串分开,其余部分作为另一个字符串,所以最终结果如下:

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

最佳答案

您可以使用 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("\r\n|\r|\n", 2);

现在

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

关于java 在第一个换行符处分隔字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23756456/

相关文章:

java - 从集合中检索 N 个级别的所有子项

java - Eclipse 不增加 .ini 中指定的 VM 堆大小

c++ - 在 C++ 中计算字符串的 MD5

string - 从由 & 符号分隔的三个子字符串中提取两个子字符串

json - 有没有办法使用 jq 通过其公共(public)键拆分 JSON 文件?

java - 使用 Spring 在 Java 中发送文本 REST 消息

java - 如何使用迭代器实现两个类的接口(interface)

c++ - std::string_view 到底比 const std::string& 快多少?

java - 使用正则表达式到 'clean up' 字符串

java - 按字节拆分字符串