Java字符串按空行分割,包括末尾的空行

比如

java 复制代码
String s = "a\nb\n\nc\n\n\n\n";
String[] split = s.split("\\R");
String[] splitResult = {"a", "b", "", "c"};

这样的结果就不包含后面的空格

得换成这样的

java 复制代码
String[] split = s.split("\\R", -1);
String[] splitResult = {"a", "b", "", "c", "", "", "", ""};

\R 是 Java 8+ 引入的正则表达式,匹配任何 Unicode 换行符序列(相当于 \n, \r\n, \r 等)。

当使用 split(regex) 时,相当于 split(regex, 0),这会:

应用正则表达式进行分割

删除末尾的空字符串

当使用 split(regex, -1) 时:

应用正则表达式进行分割

保留所有空字符串,包括末尾的

相关推荐
考虑考虑5 分钟前
Mybatis实现批量插入
java·后端·mybatis
咖啡八杯1 小时前
GoF设计模式——中介者模式
java·后端·spring·设计模式
青石路5 小时前
记一次多JDK版本问题的排查,一坑套一坑,差点没爬上来
java
像我这样帅的人丶你还8 小时前
Java 后端详解(五):Redis 缓存
java·后端·全栈
plainGeekDev10 小时前
GreenDAO → Room
android·java·kotlin
亦暖筑序15 小时前
Java 8老系统AI Workflow实战:把一次性AI对话升级成可恢复工作流
java·后端
敲代码的彭于晏15 小时前
Bean 生命周期完全图解:前端同学也能看懂的 Spring 核心机制
java·前端·后端
plainGeekDev16 小时前
ButterKnife → ViewBinding
android·java·kotlin
像我这样帅的人丶你还1 天前
Java 后端详解(四):分页与搜索
java·javascript·后端
她的男孩1 天前
数据权限为什么不能只靠注解?Forge 的 Mapper 层 SQL 改写源码拆解
java·后端·架构