• StringUtils 帮助类所涉及的方法


    /*1.字符串以prefix开始*/
    StringUtils.startsWith("sssdf","");//结果是:true
    StringUtils.startsWith("sssdf","");//结果是:true
    StringUtils.startsWith("sssdf","s");//结果是:true
    StringUtils.startsWith("sssdf","ss");//结果是:true
    StringUtils.startsWith("sssdf","sss");//结果是:true
    StringUtils.startsWith("sssdf","sssdf");//结果是:true
    StringUtils.startsWith("sssdf","f");//结果是:false
    StringUtils.startsWith("sssdf","sssdf");//结果是:true

    /*2.字符串以prefix开始,不区分大小写*/
    StringUtils.startsWithIgnoreCase("sssdf","Sssdf");//结果是:true

    /*3.字符串以数组中的字符串开始*/
    StringUtils.startsWithAny("aabcde",newString[]{"g","f"});//结果是:false
    StringUtils.startsWithAny("aabcde",newString[]{"g","a"});//结果是:true

    /*4.字符串以suffix结束*/
    StringUtils.endsWith("aabcde","d");//结果是:false
    StringUtils.endsWith("aabcde","e");//结果是:false
    StringUtils.endsWithIgnoreCase("","");//结果是:false

    /*5.替换字符串:把text中的searchString替换成replacement,max是最大替换次数,默认是替换所有*/
    StringUtils.replaceOnce("sshhhss","ss","p");//只替换一次-->结果是:phhhss
    StringUtils.replace("sshhhs","ss","p");//全部替换--->结果是:phhhs
    StringUtils.replace("sshhhsshss","ss","7777",2);//max:最大替换次数-->结果是:7777hhh7777hss
    StringUtils.replaceChars("sshhhs","ss","p");//替换所有字符,区别于replace--->结果是:pphhhp而不是pphhhs

    /*6.按照数组进行替换,位置要匹配,数组长度要相等;暂时没发现下面replaceEach和replaceEachRepeatedly二者的区别*/
    StringUtils.replaceEach("www.baidu.com",newString[]{"baidu","com"},newString[]{"taobao","net"});//结果是:www.taobao.net
    StringUtils.replaceEach("www.baidu,baidu.com",newString[]{"baidu","com"},newString[]{"taobao","net"});//结果是:www.taobao,taobao.net
    StringUtils.replaceEachRepeatedly("www.baidu.com",newString[]{"baidu","com"},newString[]{"taobao","net"});//结果是:www.taobao.net

    /*7.比较两个字符串是否相等,如果两个均为null,则也认为相等*/
    StringUtils.equals("","");//结果是true
    StringUtils.equals(null,null);//结果是true
    StringUtils.equals("",null);//结果是false
    StringUtils.equals(null,"");//结果是false
    StringUtils.equalsIgnoreCase("ss","Ss");//不区分大小写--结果是true


    /*8.返回searchChar在字符串中第一次出现的位置,如果searchChar没有在字符串中出现,则返回-1*/
    StringUtils.indexOf("sdfsfsfdsf","4");/*结果是-1*/
    StringUtils.indexOf("sdfsfsfdsf","f");/*结果是2*/

    //查找searchChar在字符串中最后一次出现的索引*/
    StringUtils.lastIndexOf("aFkyk","k");//结果是4
    StringUtils.lastIndexOf("aFkyk","");//结果是1

    /*9.找出字符数组searChars第一次出现在字符串中的位置*/
    StringUtils.indexOfAny("sdsfhhl0","f");//结果是3
    StringUtils.indexOfAny("sdsfhhl0",newString[]{"f","0"});//结果是3
    StringUtils.indexOfAny("sdsfhhl0",newString[]{"t","j"});//结果是-1
    StringUtils.indexOfAny("sdsfhhl0",newString[]{"t","j",""});//结果是3
    StringUtils.lastIndexOfAny("aFkyk",newString[]{"aFkyk","k"});//找出字符数组searChars最后一次出现在字符串中的位置--结果是5


    /*10.找出字符串中不在字符数组searchars中的第一个字符出现的位置(从0位开始)
    *如果都在,返回-1
    **/
    StringUtils.indexOfAnyBut("sdsfhhl0","h");//结果是0
    StringUtils.indexOfAnyBut("sdsfhhl0","s");//结果是1
    StringUtils.indexOfAnyBut("aa","aa");//结果是-1

    /*11.统计参数1和参数2开始部分共有的字符个数*/
    StringUtils.indexOfDifference("sdsfdsf","s");//结果是1
    StringUtils.indexOfDifference(newString[]{"sdsfdsf","s"});//结果是1

    /*12.去掉参数2在参数1开始部分共有的字符串*/
    StringUtils.difference("灌灌灌灌","灌灌灌灌啊啊");//结果是:啊啊

    /*13.查找,不区分大小写,没有找到返回-1*/
    StringUtils.indexOfIgnoreCase("aFabbSSdd","f");//返回1
    StringUtils.indexOfIgnoreCase("aFabbSSdd","f",2);//从指定位置开始查找,不区分大小写--返回-1
    StringUtils.indexOfIgnoreCase("aFabbSSdd","f",1);//返回1
    StringUtils.lastIndexOfIgnoreCase("","");
    StringUtils.lastIndexOfIgnoreCase("","",2);

    /*14.截取指定位置的字符串*/
    StringUtils.substring("dskabcee",3);
    /*结果是:abcee*/

    StringUtils.substring("dskabcee",3,5);
    /*结果是:ab*/

    /*15.截取指定字符串之前的内容*/
    StringUtils.substringBefore("dskeabcee","e");
    /*结果是:dskeabce*/

    StringUtils.substringBeforeLast("dskeabcee","e");//一直找到最后一个指定的字符串
    /*结果是:dskeabce*/

    StringUtils.substringAfter("dskeabcedeh","");
    /*结果是:dskeabcedeh*/

    StringUtils.substringAfterLast("dskeabcedeh","");
    /*结果是:*/

    /*16.截取参数2和参数3中间的字符*/
    StringUtils.substringBetween("dskeabcedeh","ds");
    /*结果是:null*/
    StringUtils.substringBetween("dskeabcedeh","ds","e");
    /*结果是:k*/
    StringUtils.substringsBetween("dskeabcedeh","ds","e");//以数组方式返回参数2和参数3中间的字符串
    /*结果是:[keabce]*/

    /*1.分割字符串,可以设定得到数组的长度,但一般情况下不要设定,这样会发生冲突*/
    StringUtils.split("y5y,4454,545");//默认是按,来分割
    StringUtils.split("aaaa#sss","#");
    /*结果是:[aaaa,sss]*/

    StringUtils.split("aaaa#sss#","#",2);

    /*2.按不同类型进行分割字符串*/
    StringUtils.splitByCharacterType("aa3444张三Bcss");
    /*结果是:[aa,3444,张三,a,B,css,B]*/

    StringUtils.splitByCharacterTypeCamelCase("");
    /*结果是:[aa,3444,张三,a,Bcss,B]*/

    /*3.分割字符串,""不会被忽略,可以设置分割字符串的数组长度*/
    StringUtils.splitByWholeSeparator("aaaa#sss#","#");//""不会被忽略
    /*结果是:[aaaa,sss,]StringUtils.split结果是:[aaaa,sss]*/

    StringUtils.splitByWholeSeparator("aaaa#sss#ggg","#");//
    /*结果是:[aaaa,sss,ggg]*/

    StringUtils.splitByWholeSeparator("aaaa#sss#ggg","");//按空格分割
    /*结果是:[aaaa#,sss#ggg]*/

    StringUtils.splitByWholeSeparator("aaaa#sss#","#",2);//2设定返回数组的最大长度
    /*结果是:[aaaa,sss#]*/

    /*4.分割字符串,""不会被忽略,可以设置分割字符串的数组长度*/
    StringUtils.splitByWholeSeparatorPreserveAllTokens("sddssfsfasfsaf",null);
    /*结果是:[sddssf,sfasfsaf,]*/

    StringUtils.splitByWholeSeparatorPreserveAllTokens("sddssfsfasfsaf","");
    /*结果是:[sddssf,sfasfsaf,]*/

    /*5.同上*/
    StringUtils.splitPreserveAllTokens("");
    StringUtils.splitPreserveAllTokens("","");
    StringUtils.splitPreserveAllTokens("","",3);

  • 相关阅读:
    这个 bug 让我更加理解 Spring 单例了
    SpringBoot
    codeblocks笔记
    https://docs.platformio.org/en/latest/boards/index.html
    外部存储的烧写
    嵌入式AI
    python的一些库
    语音芯片及解决方案
    神奇的调试值“DEADBEEF”
    【12月】+我与rt_thread的“江湖恩怨”
  • 原文地址:https://www.cnblogs.com/baizhanshi/p/5381485.html
Copyright © 2020-2023  润新知