例如
我有一根绳子
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.
但他们没有工作。
有人有解决办法吗?
3条答案
按热度按时间zxlwwiss1#
结果:
a9wyjsp72#
只需使用lookback(由
?<=
)或向前看(由?=
)为了\n
交替着\s+
(用于空格)。演示:
输出:
6mw9ycah3#
您可以拆分Assert一个换行符序列
\R
或匹配水平空格字符\h
使用替换|
```(?=\R)|(?<=\R)|\h
String example = "Hello\nHow\nAre\nyou today? I Love Pizza"; //
String[] splited = example.split("(?=\R)|(?<=\R)|\h");
for (String element : splited) {
if (element.equals("\n")) element = "newline";
System.out.println(element);
}
Hello
newline
How
newline
Are
newline
you
today?
I
Love
Pizza