JAVA 字符串三个常用操作(查找子串、截取字符串、分割字符串)

1.通过indexOf()方法来对查找子串

  1. indexOf()语法:
    public int indexOf(int ch ) :返回指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。

    public int indexOf(int ch, int fromIndex) :返回从 fromIndex 位置开始查找指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。

    int indexOf(String str) :返回指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。

    int indexOf(String str, int fromIndex):返回从 fromIndex 位置开始查找指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
  2. 示例:
        //查找子串
        String str1="abdc686512ffsc1267d";
        
        //查找指定字符第一次出现的位置
        int result1=str1.indexOf(99); //参数99为字符c的ascii码
        
        //查找指定字符串第一次出现的位置
        int result2=str1.indexOf("12");
        
        //查找指定字符第一次出现的位置,从索引处开始(包括索引处)
        int result3=str1.indexOf(97, 0);  //参数97为字符a的ascii码
        
        //查找指定字符串第一次出现的位置,从索引处开始(包括索引处)  未找到返回-1
        int result4=str1.indexOf("abc",0);
        
        System.out.println("result1:"+result1);
        System.out.println("result1:"+result2);
        System.out.println("result1:"+result3);
        System.out.println("result1=:"+result4);
        System.out.println("*****************************");
结果:
result1:3
result1:8
result1:0
result1=:-1
*****************************

2.通过subString()方法截取字符串

  1. subString()语法:
    public String substring(int beginIndex)

    public String substring(int beginIndex, int endIndex)
    1、取得的字符串长度为:endIndex - beginIndex;
    2、从beginIndex开始取,到endIndex结束,从0开始数,其中不包括endIndex位置的字符
  2. 示例:
        //截取字符串
        String str1="abdc686512ffsc1267d";
        String substr1=str1.substring(4);
        
        //指定区间(不包括结束索引处)
        String substr2=str1.substring(4, 10);
        
        System.out.println("substr1="+substr1);
        System.out.println("substr2="+substr2);
        System.out.println("*****************************");
        
        //结合使用indexOf()灵活截取示例
        String str2="<![CDATA[3-4级]]>";
        
        String cutstr=str2.substring(9, str2.indexOf("]]"));
        System.out.println("cutstr="+cutstr);
结果:
substr1=686512ffsc1267d
substr2=686512
*****************************
cutstr=3-4级

3.通过split()分割字符串

  1. split()语法:
    split() 方法根据匹配给定的正则表达式来拆分字符串。
    public String[] split(String regex, int limit)
    其中参数:regex – 正则表达式分隔符。limit – 分割的份数。
    注意: . 、 | 和 * 等转义字符,必须得加 \。
    注意: 多个分隔符,可以用 | 作为连字符。
  2. 示例:
         //以c为分割字符
        String[] splitstr=str1.split("c");
        for(String res : splitstr){
            System.out.println(res);
        }
        System.out.println("*****************************");
        
        String str = "Welcome-to-ChongQing";
        
        System.out.println("- 分隔符返回值 :" );
        for (String retval: str.split("-")){
            System.out.println(retval);
        }
        System.out.println("- 分隔符设置分割份数(2份)返回值 :" );
        for (String retval: str.split("-", 2)){
            System.out.println(retval);
        }
        System.out.println("");
        String str2 = new String("www.blog.csdn.net");
        System.out.println("转义字符返回值 :" );
        for (String retval: str2.split("\\.", 3)){
            System.out.println(retval);
        }
 
        System.out.println("");
        String str3 = new String("acount=? and uu =? or n=?");
        System.out.println("多个(3个)分隔符返回值 :" );
        for (String retval: str3.split("and|or")){
            System.out.println(retval);
        }
结果:
abd
686512ffs
1267d
*****************************
- 分隔符返回值 :
Welcome
to
ChongQing
- 分隔符设置分割份数(2份)返回值 :
Welcome
to-ChongQing

转义字符返回值 :
www
blog
csdn.net

多个(3个)分隔符返回值 :
acount=? 
 uu =? 
 n=?

注:此博客是博主做调用气象网的对外接口获取天气预报时,回忆复习字符串常用操作和正则表达式时写下的。其中部分示例摘自菜鸟教程菜鸟教程
关于更多正则表达式使用例子参考:最全的常用正则表达式大全

  • 13
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值