奇怪的String.split("\n")行为

0 java regex

我试图拆分,name但没有使用拆分方法的尝试工作

public void insertUpdate(DocumentEvent e) {
   String name="PU_Y"+
               "PU-x"+
               "Pu-z";

    split = name.split("\\r\\n");
    split = name.split("\r\n");
    split = name.split("[\r\n]+");
    split = name.split("[\\r\\n]+");
    split = name.split("\\r?\\n");
    // I tried using all the above to split above string but was not successful
}
Run Code Online (Sandbox Code Playgroud)

请帮助分割这个字符串

Jon*_*eet 6

您的字符串根本不包含任何换行符.你在多行上连接它的事实没有做任何事情.您的陈述相当于:

String name = "PU_Y" + "PU-x" + "Pu-z";
Run Code Online (Sandbox Code Playgroud)

要么

String name = "PU_YPU-xPu-z";
Run Code Online (Sandbox Code Playgroud)

你可能意味着:

String name = "PU_Y\r\n" +
              "PU-x\r\n" +
              "Pu-z";
Run Code Online (Sandbox Code Playgroud)

使用该更改重新测试正则表达式.


Noe*_*l M 5

您的字符串中没有换行符,每次开始换行时,您都将字符串连接为一个语句.

你的字符串将是:

"PU_YPU-xPu-z"
Run Code Online (Sandbox Code Playgroud)

如果需要换行符,请\r\n在终止每行上的字符串之前在String中输入:

String name="PU_Y\r\n"+
            "PU-x\r\n"+
            "Pu-z\r\n";
Run Code Online (Sandbox Code Playgroud)