apache-commons-stringutil的常用使用方法

public static void TestStr(){

//null 和 ""操作~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//判断是否Null 或者 ""

System.out.println(StringUtils.isEmpty(null));

System.out.println(StringUtils.isNotEmpty(null));

//判断是否null 或者 "" 去空格~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

System.out.println(StringUtils.isBlank(" "));

System.out.println(StringUtils.isNotBlank(null));

//去空格.Null返回null~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

System.out.println(StringUtils.trim(null));

//去空格,将Null和"" 转换为Null

System.out.println(StringUtils.trimToNull(""));

//去空格,将NULL 和 "" 转换为""

System.out.println(StringUtils.trimToEmpty(null));

//可能是对特殊空格符号去除??

System.out.println(StringUtils.strip("大家好 啊 \t"));

//同上,将""和null转换为Null

System.out.println(StringUtils.stripToNull(" \t"));

//同上,将""和null转换为""

System.out.println(StringUtils.stripToEmpty(null));

//将""或者Null 转换为 ""

System.out.println(StringUtils.defaultString(null));

//仅当字符串为Null时 转换为指定的字符串(二参数)

System.out.println(StringUtils.defaultString("", "df"));

//当字符串为null或者""时,转换为指定的字符串(二参数)

System.out.println(StringUtils.defaultIfEmpty(null, "sos"));

//去空格.去字符~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//如果第二个参数为null去空格(否则去掉字符串2边一样的字符,到不一样为止)

System.out.println(StringUtils.strip("fsfsdf", "f"));

//如果第二个参数为null只去前面空格(否则去掉字符串前面一样的字符,到不一样为止)

System.out.println(StringUtils.stripStart("ddsuuu ", "d"));

//如果第二个参数为null只去后面空格,(否则去掉字符串后面一样的字符,到不一样为止)

System.out.println(StringUtils.stripEnd("dabads", "das"));

//对数组没个字符串进行去空格。

//ArrayToList(StringUtils.stripAll(new String[]{" 中华 ", "民 国 ", "共和 "}));

//如果第二个参数为null.对数组每个字符串进行去空格。(否则去掉数组每个元素开始和结尾一样的字符)

//ArrayToList(StringUtils.stripAll(new String[]{" 中华 ", "民 国", "国共和国"}, "国"));

//查找,判断~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//判断2个字符串是否相等相等,Null也相等

System.out.println(StringUtils.equals(null, null));

//不区分大小写比较

System.out.println(StringUtils.equalsIgnoreCase("abc", "ABc"));

//查找,不知道怎么弄这么多查找,很多不知道区别在哪?费劲~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//普通查找字符,如果一参数为null或者""返回-1

System.out.println(StringUtils.indexOf(null, "a"));

//从指定位置(三参数)开始查找,本例从第2个字符开始查找k字符

System.out.println(StringUtils.indexOf("akfekcd中华", "k", 2));

//未发现不同之处

System.out.println(StringUtils.ordinalIndexOf("akfekcd中华", "k", 2));

//查找,不区分大小写

System.out.println(StringUtils.indexOfIgnoreCase("adfs", "D"));

//从指定位置(三参数)开始查找,不区分大小写

System.out.println(StringUtils.indexOfIgnoreCase("adfs", "a", 3));

//从后往前查找

System.out.println(StringUtils.lastIndexOf("adfas", "a"));

//未理解,此结果为2

System.out.println(StringUtils.lastIndexOf("d饿abasdafs我", "a", 3));

//未解,此结果为-1

System.out.println(StringUtils.lastOrdinalIndexOf("yksdfdht", "f", 2));

//从后往前查,不区分大小写

System.out.println(StringUtils.lastIndexOfIgnoreCase("sdffet", "E"));

//未解,此结果为1

System.out.println(StringUtils.lastIndexOfIgnoreCase("efefrfs看", "F" , 2));

//检查是否查到,返回boolean,null返回假

System.out.println(StringUtils.contains("sdf", "dg"));

//检查是否查到,返回boolean,null返回假,不区分大小写

System.out.println(StringUtils.containsIgnoreCase("sdf", "D"));

//检查是否有含有空格,返回boolean

System.out.println(StringUtils.containsWhitespace(" d"));

//查询字符串跟数组任一元素相同的第一次相同的位置

System.out.println(StringUtils.indexOfAny("absfekf", new String[]{"f", "b"}));

//查询字符串中指定字符串(参数二)出现的次数

System.out.println(StringUtils.indexOfAny("afefes", "e"));

//查找字符串中是否有字符数组中相同的字符,返回boolean

System.out.println(StringUtils.containsAny("asfsd", new char[]{'k', 'e', 's'}));

//未理解与lastIndexOf不同之处。是否查到,返回boolean

System.out.println(StringUtils.containsAny("啡f咖啡", "咖"));

//未解

System.out.println(StringUtils.indexOfAnyBut("seefaff", "af"));

//判断字符串中所有字符,都是出自参数二中。

System.out.println(StringUtils.containsOnly("中华华", "华"));

//判断字符串中所有字符,都是出自参数二的数组中。

System.out.println(StringUtils.containsOnly("中华中", new char[]{'中', '华'}));

//判断字符串中所有字符,都不在参数二中。

System.out.println(StringUtils.containsNone("中华华", "国"));

//判断字符串中所有字符,都不在参数二的数组中。

System.out.println(StringUtils.containsNone("中华中", new char[]{'中', '达人'}));

//从后往前查找字符串中与字符数组中相同的元素第一次出现的位置。本例为4

System.out.println(StringUtils.lastIndexOfAny("中国人民共和国", new String[]{"国人", "共和"}));

//未发现与indexOfAny不同之处 查询字符串中指定字符串(参数二)出现的次数

System.out.println(StringUtils.countMatches("中国人民共和中国", "中国"));

//检查是否CharSequence的只包含Unicode的字母。空将返回false。一个空的CharSequence(长()= 0)将返回true

System.out.println(StringUtils.isAlpha("这是干什么的2"));

//检查是否只包含Unicode的CharSequence的字母和空格('')。空将返回一个空的CharSequence假(长()= 0)将返回true。

System.out.println(StringUtils.isAlphaSpace("NBA直播 "));

//检查是否只包含Unicode的CharSequence的字母或数字。空将返回false。一个空的CharSequence(长()= 0)将返回true。

System.out.println(StringUtils.isAlphanumeric("NBA直播"));

//如果检查的Unicode CharSequence的只包含字母,数字或空格('')。空将返回false。一个空的CharSequence(长()= 0)将返回true。

System.out.println(StringUtils.isAlphanumericSpace("NBA直播"));

//检查是否只包含ASCII可CharSequence的字符。空将返回false。一个空的CharSequence(长()= 0)将返回true。

System.out.println(StringUtils.isAsciiPrintable("NBA直播"));

//检查是否只包含数值。

System.out.println(StringUtils.isNumeric("NBA直播"));

//检查是否只包含数值或者空格

System.out.println(StringUtils.isNumericSpace("33 545"));

//检查是否只是空格或""。

System.out.println(StringUtils.isWhitespace(" "));

//检查是否全是英文小写。

System.out.println(StringUtils.isAllLowerCase("kjk33"));

//检查是否全是英文大写。

System.out.println(StringUtils.isAllUpperCase("KJKJ"));

//交集操作~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//去掉参数2字符串中在参数一中开头部分共有的部分,结果为:人民共和加油

System.out.println(StringUtils.difference("中国加油", "中国人民共和加油"));

//统计2个字符串开始部分共有的字符个数

System.out.println(StringUtils.indexOfDifference("ww.taobao", "www.taobao.com"));

//统计数组中各个元素的字符串开始都一样的字符个数

System.out.println(StringUtils.indexOfDifference(new String[] {"中国加油", "中国共和", "中国人民"}));

//取数组每个元素共同的部分字符串

System.out.println(StringUtils.getCommonPrefix(new String[] {"中国加油", "中国共和", "中国人民"}));

//统计参数一中每个字符与参数二中每个字符不同部分的字符个数

System.out.println(StringUtils.getLevenshteinDistance("中国共和发国人民", "共和国"));

//判断开始部分是否与二参数相同

System.out.println(StringUtils.startsWith("中国共和国人民", "中国"));

//判断开始部分是否与二参数相同。不区分大小写

System.out.println(StringUtils.startsWithIgnoreCase("中国共和国人民", "中国"));

//判断字符串开始部分是否与数组中的某一元素相同

System.out.println(StringUtils.startsWithAny("abef", new String[]{"ge", "af", "ab"}));

//判断结尾是否相同

System.out.println(StringUtils.endsWith("abcdef", "def"));

//判断结尾是否相同,不区分大小写

System.out.println(StringUtils.endsWithIgnoreCase("abcdef", "Def"));

//字符串截取~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//截取指定位置的字符,null返回null.""返回""

System.out.println(StringUtils.substring("国民党", 2));

//截取指定区间的字符

System.out.println(StringUtils.substring("中国人民共和国", 2, 4));

//从左截取指定长度的字符串

System.out.println(StringUtils.left("说点什么好呢", 3));

//从右截取指定长度的字符串

System.out.println(StringUtils.right("说点什么好呢", 3));

//从第几个开始截取,三参数表示截取的长度

System.out.println(StringUtils.mid("说点什么好呢", 3, 2));

//截取到等于第二个参数的字符串为止

System.out.println(StringUtils.substringBefore("说点什么好呢", "好"));

//从左往右查到相等的字符开始,保留后边的,不包含等于的字符。本例:什么好呢

System.out.println(StringUtils.substringAfter("说点什么好呢", "点"));

//这个也是截取到相等的字符,但是是从右往左.本例结果:说点什么好

System.out.println(StringUtils.substringBeforeLast("说点什么好点呢", "点"));

//这个截取同上是从右往左。但是保留右边的字符

System.out.println(StringUtils.substringAfterLast("说点什么好点呢?", "点"));

//截取查找到第一次的位置,和第二次的位置中间的字符。如果没找到第二个返回null。本例结果:2010世界杯在

System.out.println(StringUtils.substringBetween("南非2010世界杯在南非,在南非", "南非"));

//返回参数二和参数三中间的字符串,返回数组形式

//ArrayToList(StringUtils.substringsBetween("[a][b][c]", "[", "]"));

//分割~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//用空格分割成数组,null为null

//ArrayToList(StringUtils.split("中华 人民 共和"));

//以指定字符分割成数组

//ArrayToList(StringUtils.split("中华 ,人民,共和", ","));

//以指定字符分割成数组,第三个参数表示分隔成数组的长度,如果为0全体分割

//ArrayToList(StringUtils.split("中华 :人民:共和", ":", 2));

//未发现不同的地方,指定字符分割成数组

//ArrayToList(StringUtils.splitByWholeSeparator("ab-!-cd-!-ef", "-!-"));

//未发现不同的地方,以指定字符分割成数组,第三个参数表示分隔成数组的长度

//ArrayToList(StringUtils.splitByWholeSeparator("ab-!-cd-!-ef", "-!-", 2));

//分割,但" "不会被忽略算一个元素,二参数为null默认为空格分隔

//ArrayToList(StringUtils.splitByWholeSeparatorPreserveAllTokens(" ab de fg ", null));

//同上,分割," "不会被忽略算一个元素。第三个参数代表分割的数组长度。

//ArrayToList(StringUtils.splitByWholeSeparatorPreserveAllTokens("ab de fg", null, 3));

//未发现不同地方,分割

//ArrayToList(StringUtils.splitPreserveAllTokens(" ab de fg "));

//未发现不同地方,指定字符分割成数组

//ArrayToList(StringUtils.splitPreserveAllTokens(" ab de fg ", null));

//未发现不同地方,以指定字符分割成数组,第三个参数表示分隔成数组的长度

//ArrayToList(StringUtils.splitPreserveAllTokens(" ab de fg ", null, 2));

//以不同类型进行分隔

//ArrayToList(StringUtils.splitByCharacterType("AEkjKr i39:。中文"));

//未解

//ArrayToList(StringUtils.splitByCharacterTypeCamelCase("ASFSRules234"));

//拼接~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//将数组转换为字符串形式

System.out.println(StringUtils.concat(getArrayData()));

//拼接时用参数一得字符相连接.注意null也用连接符连接了

System.out.println(StringUtils.concatWith(",", getArrayData()));

//也是拼接。未发现区别

System.out.println(StringUtils.join(getArrayData()));

//用连接符拼接,为发现区别

System.out.println(StringUtils.join(getArrayData(), ":"));

//拼接指定数组下标的开始(三参数)和结束(四参数,不包含)的中间这些元素,用连接符连接

System.out.println(StringUtils.join(getArrayData(), ":", 1, 3));

//用于集合连接字符串.用于集合

System.out.println(StringUtils.join(getListData(), ":"));

//移除,删除~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//删除所有空格符

System.out.println(StringUtils.deleteWhitespace(" s 中 你 4j"));

//移除开始部分的相同的字符

System.out.println(StringUtils.removeStart("www.baidu.com", "www."));

//移除开始部分的相同的字符,不区分大小写

System.out.println(StringUtils.removeStartIgnoreCase("www.baidu.com", "WWW"));

//移除后面相同的部分

System.out.println(StringUtils.removeEnd("www.baidu.com", ".com"));

//移除后面相同的部分,不区分大小写

System.out.println(StringUtils.removeEndIgnoreCase("www.baidu.com", ".COM"));

//移除所有相同的部分

System.out.println(StringUtils.remove("www.baidu.com/baidu", "bai"));

//移除结尾字符为"\n", "\r", 或者 "\r\n".

System.out.println(StringUtils.chomp("abcrabc\r"));

//也是移除,未解。去结尾相同字符

System.out.println(StringUtils.chomp("baidu.com", "com"));

//去掉末尾最后一个字符.如果是"\n", "\r", 或者 "\r\n"也去除

System.out.println(StringUtils.chop("wwe.baidu"));

//替换~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//替换指定的字符,只替换第一次出现的

System.out.println(StringUtils.replaceOnce("www.baidu.com/baidu", "baidu", "hao123"));

//替换所有出现过的字符

System.out.println(StringUtils.replace("www.baidu.com/baidu", "baidu", "hao123"));

//也是替换,最后一个参数表示替换几个

System.out.println(StringUtils.replace("www.baidu.com/baidu", "baidu", "hao123", 1));

//这个有意识,二三参数对应的数组,查找二参数数组一样的值,替换三参数对应数组的值。本例:baidu替换为taobao。com替换为net

System.out.println(StringUtils.replaceEach("www.baidu.com/baidu", new String[]{"baidu", "com"}, new String[]{"taobao", "net"}));

//同上,未发现不同

System.out.println(StringUtils.replaceEachRepeatedly("www.baidu.com/baidu", new String[]{"baidu", "com"}, new String[]{"taobao", "net"}));

//这个更好,不是数组对应,是字符串参数二和参数三对应替换.(二三参数不对应的话,自己看后果)

System.out.println(StringUtils.replaceChars("www.baidu.com", "bdm", "qo"));

//替换指定开始(参数三)和结束(参数四)中间的所有字符

System.out.println(StringUtils.overlay("www.baidu.com", "hao123", 4, 9));

//添加,增加~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//复制参数一的字符串,参数二为复制的次数

System.out.println(StringUtils.repeat("ba", 3));

//复制参数一的字符串,参数三为复制的次数。参数二为复制字符串中间的连接字符串

System.out.println(StringUtils.repeat("ab", "ou", 3));

//如何字符串长度小于参数二的值,末尾加空格补全。(小于字符串长度不处理返回)

System.out.println(StringUtils.rightPad("海川", 4));

//字符串长度小于二参数,末尾用参数三补上,多于的截取(截取补上的字符串)

System.out.println(StringUtils.rightPad("海川", 4, "河流啊"));

//同上在前面补全空格

System.out.println(StringUtils.leftPad("海川", 4));

//字符串长度小于二参数,前面用参数三补上,多于的截取(截取补上的字符串)

System.out.println(StringUtils.leftPad("海川", 4, "大家好"));

//字符串长度小于二参数。在两侧用空格平均补全(测试后面补空格优先)

System.out.println(StringUtils.center("海川", 3));

//字符串长度小于二参数。在两侧用三参数的字符串平均补全(测试后面补空格优先)

System.out.println(StringUtils.center("海川", 5, "流"));

//只显示指定数量(二参数)的字符,后面以三个点补充(参数一截取+三个点=二参数)

System.out.println(StringUtils.abbreviate("中华人民共和国", 5));

//2头加点这个有点乱。本例结果: ...ijklmno

System.out.println(StringUtils.abbreviate("abcdefghijklmno", 12, 10));

//保留指定长度,最后一个字符前加点.本例结果: ab.f

System.out.println(StringUtils.abbreviateMiddle("abcdef", ".", 4));

//转换,刷选~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//转换第一个字符为大写.如何第一个字符是大写原始返回

System.out.println(StringUtils.capitalize("Ddf"));

//转换第一个字符为大写.如何第一个字符是大写原始返回

System.out.println(StringUtils.uncapitalize("DTf"));

//反向转换,大写变小写,小写变大写

System.out.println(StringUtils.swapCase("I am Jiang, Hello"));

//将字符串倒序排列

System.out.println(StringUtils.reverse("中国人民"));

//根据特定字符(二参数)分隔进行反转

System.out.println(StringUtils.reverseDelimited("中:国:人民", ':'));

时间: 2024-10-31 06:05:08

apache-commons-stringutil的常用使用方法的相关文章

Apache Commons 常用工具类整理

其实一直都在使用常用工具类,只是从没去整理过,今天空了把一些常用的整理一下吧 怎么使用的一看就明白,另外还有注释,最后的使用pom引入的jar包   public class ApacheCommonsTest { /** * 从一个entity中把属性复制进另外一个entity中 * * @throws Exception */ @Test public void testCopyNewBean() throws Exception { StuForm form = new StuForm("

org.apache.commons.fileupload上传临时文件删除方法2则

在将文件项封装成FileItem 对象时,如果文件尺寸大于临界值,将会被写入临时文件.   清理方法1 这些临时文件在不再被使用的时候(如果相应的java.io.File是可回收的则更好)会自动被删除.这会被org.apache.commons.io.FileCleaningTracker的一个实例启动的一个收割线程默默执行.     在一个web应用中,资源清理是被javax.servlet.ServletContextListener的一个实例控制的.在其他环境中,类似的观念定是适用的.  

让时间处理简单化 【第三方扩展类库org.apache.commons.lang.time】

阅读目录 1. DateFormatUtils 和 FastDateFormat  2. DateUtils 3. DurationFormatUtils 和 StopWatch      JAVA的时间日期处理一直是一个比较复杂的问题,大多数程序员都不能很轻松的来处理这些问题.首先Java中关于时间的类,从 JDK 1.1 开始,Date的作用很有限,相应的功能已由Calendar与DateFormat代替.使用Calendar类实现日期和时间字段之间转换,使用 DateFormat 类来格式

java-类库-Apache Commons

   Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动.下面是我这几年做开发过程中自己用过的工具类做简单介绍.   组件 功能介绍 BeanUtils 提供了对于JavaBean进行各种操作,克隆对象,属性等等. Betwixt XML与Java对象之间相互转换. Codec 处理常用的编码方法的工具类包 例如DES.SHA1.MD5.Base64等. Collections java集合框架操作. Compress java提供文件打包 压缩类库

[Apache commons系列]DBUtils简介-3.示例代码

inkfish原创,请勿商业性质转载,转载请注明来源(http://blog.csdn.net/inkfish ). DbUtils是一个小型的类库,这里通过具体实例来说明如何使用DbUtils.示例分为3个类:DbUtilsExample演示了如何使用DbUtils 类:QueryRunnerExample 演示了如何使用QueryRunner .ResultSetHandler :User 类为一个JavaBean,对应于数据库中的表格.示例采用MySQL为数据库,使用JDBC4.0驱动(最

java-类库-Apache Commons补充

Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动.我选了一些比较常用的项目做简单介绍.文中用了很多网上现成的东西,我只是做了一个汇总整理. 一.Commons BeanUtils http://jakarta.apache.org/commons/beanutils/index.html 说明:针对Bean的一个工具集.由于Bean往往是有一堆get和set组成,所以BeanUtils也是在此基础上进行一些包装. 使用示例:功能有很多,网站上有详细

[Apache commons系列]DBUtils简介-2.核心类简介

inkfish原创,请勿商业性质转载,转载请注明来源(http://blog.csdn.net/inkfish ). DbUtils是一个小型的类库,不需要也不值得花太长的时间去熟悉每一个类.DbUtils核心其实只有三个类/接口,即QueryRunner .ResultSetHandler 和DbUtls (官方文档中写的是前两个).(来源:http://blog.csdn.net/inkfish)   一.下面先过一下DbUtils的几个包(package):(来源:http://blog.

java-框架-apache.commons.*工具

Apache Commons类库 1.1. 开篇 在Java的世界,有很多(成千上万)开源的框架,有成功的,也有不那么成功的,有声名显赫的,也有默默无闻的.在我看来,成功而默默无闻的那些框架值得我们格外的尊敬和关注,Jakarta Commons就是这样的一个框架.如果你至少参与了一个中型规模的Java项目,那么我想有超过一大半的机会你都接触和使用到了Jakarta Commons,不管你自己有没有察觉.就我所知,除了Apache Jakarta其他许多开源框架之外,不少所谓的商业框架其实内部有

Apache Commons IO入门教程(转)

  Apache Commons IO是Apache基金会创建并维护的Java函数库.它提供了许多类使得开发者的常见任务变得简单,同时减少重复(boiler-plate)代码,这些代码可能遍布于每个独立的项目中,你却不得不重复的编写.这些类由经验丰富的开发者维护,对各种问题的边界条件考虑周到,并持续修复相关bug. 在下面的例子中,我们会向你演示一些不同功能的方法,这些功能都是在org.apache.commons.io包下.Apache Commons IO 是一个巨大工程,我们不会深入去剖析

Apache commons fileupload文件上传实例讲解_java

文件上传的方法主要目前有两个常用的,一个是SmartUpload,一个是Apache的Commons fileupload. 我们这里主要介绍下第二个的用法,首先要上传文件,注意几个问题: 1 form表单内,要添加空间<input type="file" name="myfile"> 2 form表单的内容格式要定义成multipart/form-data格式 3 需要类库:1 commons-io.jar 2commons-fileupload-1.