例如
我有一个像
String example = "Hello\nHow\nAre\nyou today? I Love Pizza"; //
我想要的是一个像这样的数组
[Hello, \n, How, \n, Are, \n, you, today? , I , Love, Pizza]
我已经试过了
String[] splited = example.split("[\\n\\s]+");// as will a lot of regular exprisions like ("\\n\\r+") etc.
但是他们没有工作。
请问有人有解决方案吗?
你可以简单地通过使用lookbehind(由指定?<=
)或lookahead(由指定?=
)\n
并与\s+
(与空白)交替使用来做到这一点。
演示:
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
String example = "Hello\nHow\nAre\nyou today? I Love Pizza"; //
String[] splited = example.split("(?<=\\n)|(?=\\n)|\\s+");
System.out.println(Arrays.toString(splited));
}
}
输出:
[Hello,
, How,
, Are,
, you, today?, I, Love, Pizza]
那为thanx带来了答案。