You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java如何同时按竖线及多空白符分割字符串并保留单空格内容

实现方案

你要分割的字符串同时存在两种分隔符:| 和2个连续空格,只需要在split的正则里同时匹配这两种规则即可。

示例代码

public class StringSplitDemo {
    public static void main(String[] args) {
        String input = "Apple|contact issues  problems|add contact";
        // 正则规则:匹配 | 或者 2个及以上连续空白符
        String[] splitResult = input.split("\\||\\s{2,}");
        
        // 输出验证
        for (String item : splitResult) {
            System.out.println(item);
        }
    }
}

输出结果

Apple
contact issues
problems
add contact

规则说明

  • \\| 用于匹配分隔符|:|属于正则特殊字符,是默认的或运算符,必须加转义符\才能识别为普通字符,Java字符串中需要写两个反斜杠完成转义
  • \\s{2,} 是你原本用到的匹配2个及以上连续空白符的规则
  • 两个规则中间的|是正则的或逻辑,只要匹配其中任意一种规则就会触发分割

内容的提问来源于stack exchange,提问作者archita

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 08:15:03