Rya*_*man 4 java regex string split character
我希望在每个空格中将一个字符串拆分为一个字符串数组.
例如:
This_sentence_gets__split. (下划线代表空格)
变
"This"
"sentence"
"gets"
" " (注意双空格留作一个空格)
"split."
我假设我可以这样做,String.split(String regex)但我对正则表达式不是很好,我不知道如何实现这一点.
编辑:
第一个之后的任何空格也应该分成子串.例如:
Split___this.变成"Split " " " " "this."
我认为这可能是你正在寻找的东西(你可以通过\\s类,如标签,新行等所有空格来改进它)
String data = "This_sentence__gets___split".replace('_', ' ');
// System.out.println(data);
String arr[] = data.split("(?<! ) |(?<= {2})");
for (String s : arr)
System.out.println("\"" + s + "\"");
Run Code Online (Sandbox Code Playgroud)
输出:
"This"
"sentence"
" "
"gets"
" "
" "
"split."
Run Code Online (Sandbox Code Playgroud)
说明:
"(?<! ) " 将仅分割在之前没有空格的空格上"(?<= {2})" 会分裂到前面有两个空格的地方.