当前位置: 首页 > news >正文

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

---------------------------------------------------------------------------------
Blog:http://www.cnblogs.com/linjiqin/
Hadoop交流群(250363249)、Java+Oracle交流群(158560018)

题外话:
本人来自铁观音的发源地——泉州安溪,有需要正宗安溪铁观音的友友欢迎Q我:416501600。

转载于:https://www.cnblogs.com/linjiqin/p/3425359.html

相关文章:

  • 推荐一个React的管理后台框架
  • JQuery FullCalendar(二)
  • 在Pd中取消Code Name 同步
  • QTREE5 - Query on a tree V(LCT)
  • C/C++ Volatile关键词深度剖析
  • word2vec原理(一) CBOW与Skip-Gram模型基础——转载自刘建平Pinard
  • Treap实现的名次树
  • 最短路径SPFA算法(邻接表存法)
  • python 读取文件基本格式
  • Spring注入静态变量
  • Hadoop的hdfs api操作
  • 反射获取枚举的属性注释
  • 各种卷积结构原理及优劣总结
  • linux 程序管理
  • mysql 索引使用教程
  • 《Javascript数据结构和算法》笔记-「字典和散列表」
  • 2018天猫双11|这就是阿里云!不止有新技术,更有温暖的社会力量
  • Angular 2 DI - IoC DI - 1
  • Centos6.8 使用rpm安装mysql5.7
  • Create React App 使用
  • emacs初体验
  • ES10 特性的完整指南
  • JavaScript设计模式与开发实践系列之策略模式
  • Making An Indicator With Pure CSS
  • NLPIR语义挖掘平台推动行业大数据应用服务
  • Vue ES6 Jade Scss Webpack Gulp
  • 多线程事务回滚
  • 分享自己折腾多时的一套 vue 组件 --we-vue
  • 给第三方使用接口的 URL 签名实现
  • 给新手的新浪微博 SDK 集成教程【一】
  • 检测对象或数组
  • 力扣(LeetCode)22
  • 算法系列——算法入门之递归分而治之思想的实现
  • 通信类
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • ​secrets --- 生成管理密码的安全随机数​
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • (3)(3.2) MAVLink2数据包签名(安全)
  • (4)Elastix图像配准:3D图像
  • (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (附源码)ssm智慧社区管理系统 毕业设计 101635
  • (四)汇编语言——简单程序
  • (译)计算距离、方位和更多经纬度之间的点
  • (原)Matlab的svmtrain和svmclassify
  • (最完美)小米手机6X的Usb调试模式在哪里打开的流程
  • .bat批处理(九):替换带有等号=的字符串的子串
  • .NET Core Web APi类库如何内嵌运行?
  • .net framework 4.0中如何 输出 form 的name属性。
  • .NET I/O 学习笔记:对文件和目录进行解压缩操作
  • .NET Remoting学习笔记(三)信道
  • .NET中统一的存储过程调用方法(收藏)
  • .sh文件怎么运行_创建优化的Go镜像文件以及踩过的坑