«

Java截取字符串的方法有哪些

时间:2024-7-7 08:59     作者:韩俊     分类: Java


这篇文章主要介绍了Java截取字符串的方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java截取字符串的方法有哪些文章都会有所收获,下面我们一起来看看吧。

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.lispcast</groupId>
            <artifactId>org.apache.commons.lang</artifactId>
            <version>2.5.0</version>
        </dependency>

    String substring(String str,int start):避免异常地从指定的String获取一个子字符串。

    String substring(String str,int start, int end):可避免异常地从指定的String获取一个子字符串。

    String substringAfter(String str,String separator):在第一次出现分隔符后获取子字符串。

    String substringAfterLast(String str,String separator):在最后一次出现分隔符之后获取子字符串。

    String substringBefore(String str,String separator):在第一次出现分隔符之前获取子字符串。

    String substringBeforeLast(String str,String separator):在最后一次出现分隔符之前获取子字符串。

    String substringBetween(String str,String tag):获取嵌套在同一String的两个实例之间的String。

    String substringBetween(String str, String open, String close):获取嵌套在两个字符串之间的字符串。

测试:

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);

标签: java

热门推荐