文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Java如何实现截取字符串

2023-09-11 15:06

关注

文章目录

0 写在前面

在实际工作中有一些地方需要用到截取字符串的方法,所以在此记录下截取字符串的几种方法。
.substring()
StringUtils.substring()
split()+正则表达式

1 .substring()

这个是比较常用的一个方法。
此方法有两种形式:

substring(int beginIndex); //提取从索引位置开始至结尾处的字符串部分substring(int beginIndex,int endIndex); //提取beginIndex开始到endIndex的字符串部分

实例代码:

        String str = "你好,Java练习生";        //substring(int beginIndex);        String substring1 = str.substring(3);        //substring(int beginIndex,int endIndex);        String substring2 = str.substring(3, 7);        System.out.println(substring1);//Java练习生        System.out.println(substring2);//Java

需要注意的是:计数从0开始,如果超过了字符串长度则会报错:

java.lang.StringIndexOutOfBoundsException: String index out of range: 

计算位置示意图
在这里插入图片描述

2 split()+正则表达式

不常用,不过在某些特定场合特别好用。
格式:字符串.split("指定分隔符");–返回的是一个数组
举例(以英文逗号为分隔符):

        String str = "good,good,study,day,day,up";        String[] split = str.split(",");        for (String s:             split) {            System.out.println(s);        }

在这里插入图片描述

3 StringUtils.substring()

需要在导入StringUtils的工具类。结合了很多方法。
因为每个人用的工具类不同所以只记录一种。
maven导入:

        <dependency>            <groupId>com.lispcastgroupId>            <artifactId>org.apache.commons.langartifactId>            <version>2.5.0version>        dependency>

测试:

        String str = "大家好,我是练习两年半的个人练习生,cxk";        //- String substring(String str,int start):避免异常地从指定的String获取一个子字符串。        String substring1 = StringUtils.substring(str, 4);                //- String substring(String str,int start, int end):可避免异常地从指定的String获取一个子字符串。        String substring2 = StringUtils.substring(str, 4, 7);                //- String substringAfter(String str,String separator):在第一次出现分隔符后获取子字符串。        String substringAfter = StringUtils.substringAfter(str, ",");                //- String substringAfterLast(String str,String separator):在最后一次出现分隔符之后获取子字符串。        String substringAfterLast = StringUtils.substringAfterLast(str, ",");                //- String substringBefore(String str,String separator):在第一次出现分隔符之前获取子字符串。        String substringBefore = StringUtils.substringBefore(str, ",");                //- String substringBeforeLast(String str,String separator):在最后一次出现分隔符之前获取子字符串。        String substringBeforeLast = StringUtils.substringBeforeLast(str, ",");                //- String substringBetween(String str,String tag):获取嵌套在同一String的两个实例之间的String。        String substringBetween1 = StringUtils.substringBetween(str, ",");                // - String  substringBetween(String str, String open, String close):获取嵌套在两个字符串之间的字符串。        String substringBetween2 = StringUtils.substringBetween(str, "好", "的");        System.out.println(substring1);        System.out.println(substring2);        System.out.println(substringAfter);        System.out.println(substringAfterLast);        System.out.println(substringBefore);        System.out.println(substringBeforeLast);        System.out.println(substringBetween1);        System.out.println(substringBetween2);        

在这里插入图片描述

4 写在最后

注意:substring() 方法是按字符截取,而不是按字节截取。
工具类没什么神奇的,都是编写好的方法直接拿来用的,省事,也可以自行尝试编写工具类。

来源地址:https://blog.csdn.net/weixin_45909221/article/details/128305623

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯