java分割字符串多种方法(附例子)

 更新时间:2023年10月31日 11:59:58   作者:挽安  
这篇文章主要给大家介绍了关于java分割字符串多种方法的相关资料,Java中有多种方法可以实现字符串分割,文中将每张方法都给出了代码示例,需要的朋友可以参考下

1、String#split

可以根据给定的分隔符或正则表达式将一个字符串分割成多个部分
// 使用正则表达式 "(?<=\\G.{" + n + "})"来分割字符串,其中表达式中的 n 表示字符的长度。
public static List<String> usingSplitMethod(String text, int n) {
    String[] results = text.split("(?<=\\G.{" + n + "})");

    return Arrays.asList(results);
}

2、String#substring

一般情况我们都是用于截取字符串使用的,这里我们也是可以用来处理字符串的分割,只要循环就行
public static List<String> usingSubstringMethod(String text, int n) {
    List<String> results = new ArrayList<>();
    int length = text.length();

    for (int i = 0; i < length; i += n) {
        results.add(text.substring(i, Math.min(length, i + n)));
    }

    return results;
}

3、Pattern类

Pattern 类通常来说,我们是用于处理正则表达式,做一些match使用,正如第一种 String#split 方法所见,正则表达式也可以用于分割字符串
// 我们使用 .{1,n}构建了一个 Pattern 对象,它能个匹配 1 到 n 个字符
public static List<String> usingPattern(String text, int n) {
    return Pattern.compile(".{1," + n + "}")
        .matcher(text)
        .results()
        .map(MatchResult::group)
        .collect(Collectors.toList());
}

4、Guava类

以上三种方法是Jdk 中的 API,Guava 是第三方依赖包所提供的
Guava 通过 Splitter 类可以很简单的针对我们的这个使用场景,进行字符串分割。这个 fixedLength() 方法为后续的分割提供了固定的分割长度。
public static List<String> usingGuava(String text, int n) {
    Iterable<String> parts = Splitter.fixedLength(n).split(text);
    return ImmutableList.copyOf(parts);
}

附:Java 字符串分割和拼接用逗号分开

String str="1278,1289,1286"; 
                        String [] strArr=str.split(","); 
                        String urlRequest="";
                        for(int i=0;i<strArr.length;i++) { 
                                String url="http://localhost:8080/demo/test?fileID=canshu"; 
                                System.out.println("输出结果"+strArr[i]);
                                url=url.replace("canshu", strArr[i]); 
                                System.out.println(url);
                                urlRequest+=url+","; 
                        }
                        System.out.println(urlRequest);

总结 

到此这篇关于java分割字符串多种方法的文章就介绍到这了,更多相关java分割字符串内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 10个SpringBoot参数验证你需要知道的技巧分享

    10个SpringBoot参数验证你需要知道的技巧分享

    参数验证很重要,是平时开发环节中不可少的一部分,那么在Spring Boot应用中如何做好参数校验工作呢,本文提供了10个小技巧,你知道几个呢
    2023-03-03
  • Mybatis中mapper.xml实现热加载介绍

    Mybatis中mapper.xml实现热加载介绍

    大家好,本篇文章主要讲的是Mybatis中mapper.xml实现热加载介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • maven安装配置的实现步骤

    maven安装配置的实现步骤

    本文主要介绍了maven安装配置的实现步骤,包括下载和安装Maven,配置Maven的环境变量,以及创建Maven项目,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • springboot整合quartz实例demo

    springboot整合quartz实例demo

    Quartz是一个开源的任务调度框架。基于定时、定期的策略来执行任务是它的核心功能,比如x年x月的每个星期五上午8点到9点,每隔10分钟执行1次,本文重点给大家介绍springboot整合quartz的实例代码,感兴趣的朋友一起看看吧
    2022-02-02
  • 在idea中git实现里查看历史代码方式

    在idea中git实现里查看历史代码方式

    这篇文章主要介绍了在idea中git里查看历史代码的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • 关于@Scheduled不执行的原因分析

    关于@Scheduled不执行的原因分析

    这篇文章主要介绍了关于@Scheduled不执行的原因分析,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • Springboot项目通过redis实现接口的幂等性

    Springboot项目通过redis实现接口的幂等性

    这篇文章主要为大家介绍了Springboot项目通过redis实现接口的幂等性,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • Java开发学习之Bean的生命周期详解

    Java开发学习之Bean的生命周期详解

    从创建到消亡的完整过程,例如人从出生到死亡的整个过程就是一个生命周期。本文将通过示例为大家详细讲讲Bean的生命周期,感兴趣的可以学习一下
    2022-06-06
  • java微信企业号开发之发送消息(文本、图片、语音)

    java微信企业号开发之发送消息(文本、图片、语音)

    这篇文章主要为大家详细介绍了java微信企业号开发之发送消息,发送类型包括文本、图片、语音,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • 详解java CountDownLatch和CyclicBarrier在内部实现和场景上的区别

    详解java CountDownLatch和CyclicBarrier在内部实现和场景上的区别

    这篇文章主要介绍了详解java CountDownLatch和CyclicBarrier在内部实现和场景上的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05

最新评论