Apache commons lang工具类学习笔记(2)--StringUtils

StringUtils工具类具有对String具有简单而强大的处理能力,从检查空串到分割字符串,到生成格式化的字符串,使用都很方便简洁,能减少很多代码量;

详细的使用方法可以参考下面的例子或者官方的API(http://commons.apache.org/proper/commons-lang/javadocs/api-release/org/apache/commons/lang3/StringUtils.html#isAlpha(java.lang.CharSequence)


package com.senvn.openSource.model;

import java.io.IOException;

import org.apache.commons.lang3.StringUtils;

/**
*
* @author senvn
*
*/
public class StringUtilsTest {
public static void main(String[] args) throws IOException {
String testStr = "abc123";
String mailStr = "[email protected]";
String haveBlankStr = "test [email protected]";
String blankStr = " ";
// 判断字符串是否包含指定的字符,需要查询的字符可以为int类型
System.out.println("---包含@126 字符--:"
+ StringUtils.contains(mailStr, "@126"));
char[] testStrArray = { ‘k‘, ‘@‘, ‘#‘ };
// 判断字符串中是否含有任意制定的char
System.out.println("----包含指定的字符---:"
+ StringUtils.containsAny(mailStr, testStrArray));
System.out.println("----忽略大小写---:"
+ StringUtils.containsIgnoreCase(mailStr, "HAI"));
// 判断字符串中是否只包含特定的字符
System.out.println("----是否只包含特定的字符---:"
+ StringUtils.containsOnly(mailStr, ‘@‘, ‘t‘));
// 判断字符串中是否包含空格
System.out.println("----判断字符串中是否包含空格---:"
+ StringUtils.containsWhitespace(haveBlankStr));
// 判断字符串中是否包含空格
// endsWithAny判断字符串是否以特定的一些字符结尾
// endsWithIgnoreCase判定忽略大小写
System.out.println("----判断字符串中是否以特定字符结尾---:"
+ StringUtils.endsWith(mailStr, ".com"));
// 判断字符串是否相等
// equalsIgnoreCase判定忽略大小写
System.out.println("----判断字符串是否相等---:"
+ StringUtils
.equals(mailStr, new String("[email protected]")));
// 判断字符串是否全小写
// isAllUpperCase判断字符串是否全大写
System.out.println("----判断字符串是否全大写---:"
+ StringUtils.isAllLowerCase(testStr));
// TODO Java字符Unicode什么正在研究中……
System.out.println("----判断字符串字符类型---:" + StringUtils.isAlpha("α"));
// 判断字符串是否为空
System.out.println("----判断字符串是否为空---:" + StringUtils.isEmpty(blankStr));
// isBlank相当于isEmpty(str.trim());
System.out.println("----判断字符串是否为空---:" + StringUtils.isBlank(blankStr));
// 判断字符串是否为空
System.out.println("----判断字符串是否以特定字符开头---:"
+ StringUtils.startsWith(mailStr, "haitao"));
// 将字符串特定字段用...代替
System.out.println("将字符串特定字段用...代替:"
+ StringUtils.abbreviate(mailStr, 8));
// 字符串首字母大写
// uncapitalize首字母消息
System.out.println("将字符串特定字段用...代替:" + StringUtils.capitalize(mailStr));
// 将字符串扩充到特定长度,字符串居中,两边用特定字符填充,默认为""
System.out.println("字符串扩充到特定长度,字符串居中:"
+ StringUtils.center(testStr, 10, "*"));
// 移除字符串末尾的"\n", "\r", or "\r\n"
System.out.print("移除字符串末尾的‘\\n‘, ‘\\r‘, or ‘\\r\n‘"
+ StringUtils.chomp("suio\radia\r\n"));
// 移除特定字符串最后一个字符
System.out.println("移除特定字符串最后一个字符:" + StringUtils.chop(mailStr));
// 显示特定字符在字符串中的数目
System.out.println("移除特定字符串最后一个字符:"
+ StringUtils.countMatches(mailStr, "o"));
// 设定默认字符串,如果str为空则返回默认值
System.out.println("设定默认字符串:" + StringUtils.defaultString(null, "NON"));
// 删除空格
System.out.println("删除字符串中的空格:"
+ StringUtils.deleteWhitespace(haveBlankStr));
// 比较两个字符串,返回不同之处
System.out.println("删除字符串中的空格:"
+ StringUtils.difference("i am a machine", "i am a robot"));
// 匹配相似度(值越小,相似度越高)
System.out
.println(StringUtils.getLevenshteinDistance("我是大明猩", "我是大明星") > StringUtils
.getLevenshteinDistance("我是大明猩", "我是大风车"));
// 返回特定字符串所在位置
System.out.println("返回特定字符串所在位置:" + StringUtils.indexOf(mailStr, "@"));
// 截取字符串
System.out.println("获取邮箱服务商:"
+ StringUtils.substringBetween(mailStr, "@", "."));
// 移除特定字符
System.out.println("移除特定字符:" + StringUtils.strip(haveBlankStr, "@"));
// 分割字符串
String[] splitStrs = StringUtils.split(haveBlankStr, " ");
System.out.print("分割字符串后的字符串:");
for (String str : splitStrs) {
System.out.print(str + "\t");
}
System.out.println();
// 删除字符串
System.out.println("删除字符串:" + StringUtils.remove(mailStr, "@126.com"));
// 反转字符串
System.out.println("反转字符串:" + StringUtils.reverse(mailStr));
// 替换字符串
System.out.println("替换字符串:" + StringUtils.replace(mailStr, "@", "#"));
// 字符串截取,取右端特定位数
System.out.println("替换字符串:" + StringUtils.right(mailStr, 5));
// 删除字符的指定头部
System.out.println("替换字符串:"
+ StringUtils.removeStartIgnoreCase(mailStr, "hai"));
// 重复字符串
System.out.println("重复字符串:" + StringUtils.repeat("hahaha!", 3));
// 填充字符串
System.out.println("填充字符串:" + StringUtils.leftPad("xixixi", 10, "*"));
String[] joinStrings = { "mokey", "dog", "snake" };
// 填充字符串
System.out.println("拼接字符串:" + StringUtils.join(joinStrings, "^_^"));
}
}

Apache commons lang工具类学习笔记(2)--StringUtils,布布扣,bubuko.com

时间: 2024-10-24 08:59:48

Apache commons lang工具类学习笔记(2)--StringUtils的相关文章

Apache Commons Random工具类介绍和使用

之前在工作中,有大量用到随机数的场景.当然我们可以自己扩展JDK自带的random函数,但是有现成的轮子是最好的,今天我们来学习下Apache Commons 中的Random类.

日期工具类 DateUtils(继承org.apache.commons.lang.time.DateUtils类)

/** * */ package com.dsj.gdbd.utils.web; import org.apache.commons.lang3.time.DateFormatUtils; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; import java.util.regex.Matcher; /** * 日期工具类, 继承org.apache.commons.l

java开发_org.apache.commons.lang.StringUtils工具类源码

package org.apache.commons.lang; 18 19 import java.util.ArrayList; 20 import java.util.Collection; 21 import java.util.Iterator; 22 import java.util.List; 23 import java.util.Locale; 24 25 import org.apache.commons.lang.text.StrBuilder; 26 27 /** 28

org.apache.commons.lang.exception包的ExceptionUtils工具类获取getFullStackTrace

/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You u

org.apache.commons.lang下的工具类

1.org.apache.commons.lang.ArrayUtils 2.org.apache.commons.lang.time.DateFormatUtils

关于找不到类org/apache/commons/lang/xwork/StringUtils的问题

在替换最新版的 struts2包的解决过程中.遇到 找不到这两个包org/apache/commons/lang/xwork/StringUtils.org/apache/commons/lang/xwork/OjbectUtils的问题,最后发现事实上是struts2的还有一个包(struts2-convention-plugin.jar)引用了,替换掉就能够了. 原文地址:https://www.cnblogs.com/ldxsuanfa/p/9938781.html

Caused by: java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException

转载:http://www.tuicool.com/articles/Vvia6f 缺少相应jar包都会有异常,根据异常找jar包导入...... 这里我说下lang包,因为这个包我找了好半天: 我用的是: commons-lang3-3.1.jar  出现异常: java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException 可以看出是因为缺少jar包,但是很明显我已经导入了,

ssh整合启动tomcat报java.lang.ClassNotFoundException: org.apache.commons.lang.xwork.StringUtils

今天搭建了一个ssh项目环境,整合后,访问项目首页,登录不进去,控制台报错,后来调试代码后,在获取数据库数据后,返回到action时,又进入了action导致死循环,其实这里是两个问题,控制台报错如下: 2015-4-27 20:57:56 org.apache.catalina.core.StandardWrapperValve invoke严重: Servlet.service() for servlet default threw exceptionjava.lang.ClassNotFo

apache commons lang 3.2(一)创建者模式部分

近段时间,对apache commons lang的源码做了深入的了解,在此把一些见解与大家分享. 首先我选择了大部分框架还依赖的3.2版本而不是最新的3.4版本进行源码的研读,今天就简介一下commons lang的创建者模式部分. 首先我们来看一下该模块类调用关系: 创建者模式部分主要是使用创建者模式完成一些Object类中的共用方法,比如说toString()方法.equals()方法.hashCode()方法等.其出彩之处在于使用了创建者模式使其功能的扩展十分灵活,并且通过反射获取实体字