StringUtils工具类


借鉴地址【https://blog.csdn.net/zhengsaisai/article/details/78285829】


# 一、判断null,""," "
System.out.println(StringUtils.isEmpty(null));// true
System.out.println(StringUtils.isEmpty(""));// true
System.out.println(StringUtils.isEmpty(" "));// false
// 判断是否null 或者 "" 去空格
System.out.println(StringUtils.isBlank(""));// true
System.out.println(StringUtils.isBlank(" "));// true
System.out.println(StringUtils.isBlank(null));// true

二、去空格.Null返回null

System.out.println(StringUtils.trim(null));// null
System.out.println(StringUtils.trim(" t est  "));// t est
// 去空格,将Null和"" 转换为Null
System.out.println(StringUtils.trimToNull(""));// null
System.out.println(StringUtils.trimToNull(null));// null
// 去空格
System.out.println(StringUtils.strip("\t大家好 "));// 大家好
// 将""和null转换为Null
System.out.println(StringUtils.stripToNull(" "));// null
// 将""和null转换为""
System.out.println(StringUtils.stripToEmpty("\t "));// ""
// 将""或者Null 转换为 ""
System.out.println(StringUtils.stripToEmpty(null));// ""
// 仅当字符串为Null时 转换为指定的字符串(二参数)
System.out.println(StringUtils.defaultString(null, "df"));// df
// 当字符串为null或者""时,转换为指定的字符串(二参数)
System.out.println(StringUtils.defaultIfEmpty(null,"sos"));// sos

三、去空格.去字符

// 如果第二个参数为null去空格(否则去掉字符串两侧一样的字符,到不一样为止)
System.out.println(StringUtils.strip("fsfsdf", "f"));// sfsd
System.out.println(StringUtils.strip("fsfsdf ", "f"));// sfsdf
// 如果第二个参数为null只去前面空格(否则去掉字符串前面一样的字符,到不一样为止)
System.out.println(StringUtils.stripStart("ddsuuu ", "d"));// suuu
// 如果第二个参数为null只去后面空格,(否则去掉字符串后面一样的字符,到不一样为止),跟后面一个个比较
System.out.println(StringUtils.stripEnd("空da得到acds", "c得到ads"));// ""
// 对数组没个字符串进行去空格  [两边有空格, 中间 有空格, 后面有空格]
System.out.println(Arrays.toString(StringUtils.stripAll(new String[]{" 两边有空格 ", "中间 有空格 ", "后面有空格 " })));
// 如果第二个参数为null.对数组每个字符串进行去空格。(否则去掉数组每个元素开始和结尾一样的字符)
// [ 前面有, 中间 有空格 , 后面有空格 ]
System.out.println(Arrays.toString(StringUtils.stripAll(new String[]{" 前面有空格", "中间 有空格 ", "后面有空格 " }, "空格")));
// [前面有空格, 中间 有空格, 后面有空格]
System.out.println(Arrays.toString(StringUtils.stripAll(new String[]{" 前面有空格", "中间 有空格 ", "后面有空格 " }, null)));

四、 查找,判断

// 判断2个字符串是否相等相等,Null也相等
System.out.println(StringUtils.equals(null, null));// true
System.out.println(StringUtils.equals("null", "null"));// true
System.out.println(StringUtils.equals("null", new String("null")));// true
// 不区分大小写比较
System.out.println(StringUtils.equalsIgnoreCase("abc", "ABc"));// true
System.out.println(StringUtils.equalsIgnoreCase("abc测试123c", "ABc测试123c"));// true

五、查找

// 普通查找字符,如果一参数为null或者""返回-1
System.out.println(StringUtils.indexOf(null, "a"));// -1
System.out.println(StringUtils.indexOf("sdsdsda测试", "a"));// 6
// 从指定位置(三参数)开始查找,本例从第2个字符开始查找k字符
System.out.println(StringUtils.indexOf("akfekcd中华", "k", 2));// 4
System.out.println(StringUtils.ordinalIndexOf("akfekcd中华", "k", 2));// 4
// 查找
System.out.println(StringUtils.indexOf("adfs", "D"));// -1
// 从后往前查找
System.out.println(StringUtils.lastIndexOf("adfas", "a"));// 3
// 从3的位置往回找,如果找到返回索引值
System.out.println(StringUtils.lastIndexOf("d饿basdfs我", "a", 3));// 3
// 检查是否查到,返回boolean,null返回假,字母区分大小写
System.out.println(StringUtils.contains("bbbddfffef", "df"));// true
System.out.println(StringUtils.contains("bbbddfffef", null));// false
System.out.println(StringUtils.contains("bbbddfffef", ""));// true
// 不区分大小写
System.out.println(StringUtils.containsIgnoreCase("sffeece哈fverfd", "哈F")); // true
// 查询字符串跟数组任一元素相同的第一次相同的位置,区分大小写
System.out.println(StringUtils.indexOfAny("sddddecffrfasd",new String[]{"de","dd","s"}));// 0
System.out.println(StringUtils.indexOfAny("sddddecffrfasd",new String[]{"dE","dd","S"})); // 1
// 查询字符串中指定字符串(参数二)第一次匹配的下标
System.out.println(StringUtils.indexOfAny("sddddecffrfasd","f"));// 7
// 返回第一次不匹配的下标
System.out.println(StringUtils.indexOfAnyBut("seefaff", "se"));// 3
// 判断字符串中所有字符,都是出自参数二中
System.out.println(StringUtils.containsOnly("中华华","中华"));// true
System.out.println(StringUtils.containsOnly("中华华",new char[]{'中','华'}));// true
// 判断字符串中所有字符,都不在参数二中
System.out.println(StringUtils.containsNone("containsNone",new char[]{'n','b'}));// false
System.out.println(StringUtils.containsNone("containsNone","tn"));// false
// 查询出子串出现的次数
System.out.println(StringUtils.countMatches("ddd从大的得到的cdde34fr43","dd"));// 2
// 检查是否只包含数值
System.out.println(StringUtils.isNumeric("3643444455"));// true
// 检查是否只包含数值或者空格
System.out.println(StringUtils.isNumericSpace("36434 44455"));// true
// 检查是否只是空格或""
System.out.println(StringUtils.isWhitespace("   "));// true
System.out.println(StringUtils.isWhitespace(null));// false

六、交集操作

// 去掉参数2字符串中在参数一中开头部分共有的部分
System.out.println(StringUtils.difference("天下舞功","天下武功,唯快不破")); // 功,唯快不破
// 统计2个字符串开始部分共有的字符个数
System.out.println(StringUtils.indexOfDifference("ww.taobao", "www.taobao.com"));// 2

七、字符串截取

// 截取指定位置的字符,null返回null.”“返回””
System.out.println(StringUtils.substring("中国加油",1));// 国加油
// 包前不包尾
System.out.println(StringUtils.substring("天下武功,唯快不破",1,7));// 下武功,唯快
// 从左截取指定长度的字符串
System.out.println(StringUtils.left("说点什么好呢", 3));// 说点什
// 右	
System.out.println(StringUtils.right("说点什么好呢", 3));// 么好呢
// 类似substring
System.out.println(StringUtils.mid("说点什么好呢", 3,2));// 么好
// 指定元素作为切割符
System.out.println(StringUtils.substringBefore("说点什么好呢","好"));// 说点什么
System.out.println(StringUtils.substringAfter("说点什么好呢","好"));// 呢

八、拼接

// 将数组转换为字符串形式
String[] arry = new String[]{"测试","数组","拼接"};
System.out.println(StringUtils.join(arry,","));// 测试,数组,拼接

九、去除

//删除所有空格符
System.out.println(StringUtils.deleteWhitespace(" s 中 你 4j"));// s中你4j
// 移除开始部分的相同的字符
System.out.println(StringUtils.removeStart("www.bwwaidu.com", "ww"));// w.bwwaidu.com
// 移除开始部分的相同的字符,不区分大小写
System.out.println(StringUtils.removeEnd("www.bwwaidu.com", "com"));// www.bwwaidu.
// 移除所有相同的部分
System.out.println(StringUtils.remove("www.bwwaidu.com", "ww"));// w.baidu.com
// 移除尾部相同的部分
System.out.println(StringUtils.chomp("www.bwwaidu.com", "com"));// www.bwwaidu.
System.out.println(StringUtils.chomp("www.bwwaidu.com\t\n", "com\t\n"));// www.bwwaidu.

十、替换

System.out.println(StringUtils.replaceOnce("www.bwwaidu.com\t\n", "com\t\n","test"));// www.bwwaidu.test
System.out.println(StringUtils.replace("www.bwwaidu.com\t\n", "w","0"));// 000.b00aidu.com	
System.out.println(StringUtils.replace("www.bwwaidu.com\t\n", "w","0",2));// 00w.bwwaidu.com

十一、添加

// 复制参数一的字符串,参数二为复制的次数
System.out.println(StringUtils.repeat("www.bwwaidu.com",2));// www.bwwaidu.comwww.bwwaidu.com
System.out.println(StringUtils.rightPad("www.",10) + "----");// www.      ----
System.out.println(StringUtils.rightPad("百度",4,"测试"));// 百度测试
System.out.println(StringUtils.leftPad("百度",6));//     百度

十二、转换

// 转换第一个字符为大写
System.out.println(StringUtils.capitalize("df"));// Df
// 转换第一个字符为小写
System.out.println(StringUtils.uncapitalize("Df"));// df
// 反向转换,大写变小写,小写变大写
System.out.println(StringUtils.swapCase("I am Jiang, Hello"));// i AM jIANG, hELLO
// 将字符串倒序排列
System.out.println(StringUtils.reverse("转换测试"));// 试测换转
// 根据特定字符(二参数)分隔进行反转
System.out.println(StringUtils.reverseDelimited("msg:test:reverse",':'));// reverse:test:msg
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值