// org.apache.commons.lang3.StringUtils

// 1.IsEmpty/IsBlank - checks if a String contains text 检查是否为空
boolean empty = StringUtils.isEmpty(""); // 调用cs == null || cs.length() == 0
// System.out.println(empty);
boolean blank = StringUtils.isBlank(" "); // 调用cs == null || cs.length() == 0 和 遍历每个字符Character.isWhitespace(cs.charAt(i))
// System.out.println(blank); // 扩展:isWhitespace() 方法用于判断指定字符是否为空白字符,空白符包含:空格、tab键、换行符。
// http://www.runoob.com/java/character-iswhitespace.html // 2.Trim/Strip - removes leading and trailing whitespace 移除前后空白
String trim = StringUtils.trim(" abc "); // 调用str.trim()
// System.out.println(trim); //"abc"
StringUtils.trimToEmpty(""); // 调用str == null ? "" : str.trim()
StringUtils.trimToNull(""); // 调用 trim(str),再调用isEmpty(ts) String strip = StringUtils.strip("abcdabc", "abc"); // 按指定字符前后截取 ,调用indexOf()和subString()
// System.out.println(strip); //" abc"
// 参考:StringUtils中strip、stripStart、stripEnd剥离方法源码详解
// https://blog.csdn.net/yaomingyang/article/details/79169547 // 3.Equals/Compare - compares two strings null-safe 判断相等/比较
StringUtils.equals("abc", "abc"); // 判断相等,调用==,equals,regionMatches
StringUtils.equalsIgnoreCase("abc", "ABC"); // 判断相等(忽略大小写)
StringUtils.equalsAny("abc", "abc", "def"); // 判断第一个字符与后面任意字符串相等,遍历调用equals判断第一个字符与后面字符是否相等
StringUtils.equalsAnyIgnoreCase("abc", "ABC", "def"); // 判断第一个字符与后面任意字符串相等(忽略大小写) // 扩展:regionMatches() 方法用于检测两个字符串在一个区域内是否相等。
// http://www.runoob.com/java/java-string-regionmatches.html // 4.startsWith - check if a String starts with a prefix null-safe
StringUtils.startsWith("abcdef", "abc"); // true 以什么开头,调用CharSequenceUtils.regionMatches
StringUtils.startsWithIgnoreCase("ABCDEF", "abc"); // true
StringUtils.startsWithAny("abcxyz", new String[] { null, "xyz", "abc" }); // true
StringUtils.startsWithAny("ABCXYZ", null, "xyz", "abc"); // false
// 还可使用: java.lang.String.startsWith
"abcdef".startsWith("abc"); // 5.endsWith - check if a String ends with a suffix null-safe
StringUtils.endsWith("abcdef", "def"); // true
StringUtils.endsWithIgnoreCase("ABCDEF", "def"); // true
StringUtils.endsWithAny("abcxyz", new String[] { null, "xyz", "abc" }); // true // 6.IndexOf/LastIndexOf/Contains - null-safe index-of checks
StringUtils.indexOf("aabaabaa", "ab"); // 1 调用CharSequenceUtils.indexOf
StringUtils.indexOf("aabaabaa", "ab", 0); // 1 从第3位开始查找,"b"首次出现的位置
StringUtils.ordinalIndexOf("aabaabaa", "ab", 1); //
StringUtils.indexOfIgnoreCase("aabaabaa", "AB"); // 1 调用CharSequenceUtils.regionMatches
StringUtils.indexOfIgnoreCase("aabaabaa", "AB", 0); //
StringUtils.lastIndexOf("aabaabaa", "ab"); // 4 调用CharSequenceUtils.lastIndexOf
StringUtils.lastIndexOf("aabaabaa", 'b', 8); //
StringUtils.lastIndexOf("aabaabaa", 'b', 4); //
StringUtils.lastIndexOf("aabaabaa", 'b', 0); // -1
StringUtils.contains("abc", 'a'); // true 调用CharSequenceUtils.indexOf
StringUtils.containsIgnoreCase("abc", "A"); // true
StringUtils.containsWhitespace("1 2"); // true 是否包含空字符,调用Character.isWhitespace
// 还可使用: java.lang.String.indexOf
"aabaabaa".indexOf("ab"); // 7.IndexOfAny/LastIndexOfAny/IndexOfAnyBut/LastIndexOfAnyBut - index-of any of a set of Strings
StringUtils.indexOfAny("aabaabaa", "ab", "a");
StringUtils.indexOfAny("aabaabaa", new char[] { 'a', 'b' });
StringUtils.lastIndexOfAny("aabaabaa", "ab", "a");
StringUtils.indexOfAnyBut("sdsfhhl0", "h");//结果是0 找出字符串中不在字符数组searchars中的第一个字符出现的位置(从0位开始)
StringUtils.indexOfAnyBut("sdsfhhl0", "s");//结果是1
StringUtils.indexOfAnyBut("aa", "aa");//结果是-1 // 8.ContainsOnly/ContainsNone/ContainsAny - does String contains only/none/any of these characters
StringUtils.containsOnly("abab", new char[] { 'a', 'b', 'c' }); // true 检查字符串(参数1)中的字符是否全为字符串(参数2)中的字符的子集.
StringUtils.containsOnly("abab", "abc");
StringUtils.containsAny("zzabyycdxx", new char[] { 'z', 'a' });// true
StringUtils.containsNone("abab", new char[] { 'x', 'y', 'z' }); // true
// 还可使用: java.lang.String.contains
"aabaabaa".contains("ab"); // 调用String.indexOf // 9.Substring/Left/Right/Mid - null-safe substring extractions
StringUtils.substring("abc", 2); // "c" 调用str.substring
StringUtils.substring("abc", 0, 2); // "ab"
StringUtils.left("abc", 2); // "ab"
StringUtils.right("abc", 2); // "bc"
// 还可使用: java.lang.String.substring
"abc".substring(0, 2); // "ab" 调用new String("abc".getBytes(), 0, 2); // 10.SubstringBefore/SubstringAfter/SubstringBetween - substring extraction relative to other strings
StringUtils.substringBefore("abc", "c"); // "ab" 截取指定字符串之前的内容
StringUtils.substringAfter("abc", "a"); // "bc"
StringUtils.substringBeforeLast("abcba", "b"); // "abc" 一直找到最后一个指定的字符串
StringUtils.substringAfterLast("abcba", "b"); // "a"
StringUtils.substringBetween("tagabctag", "tag"); // "abc"
StringUtils.substringBetween("yabczyabcz", "y", "z"); // "abc"
StringUtils.substringsBetween("[a][b][c]", "[", "]"); // ["a","b","c"] // 11.Split/Join - splits a String into an array of substrings and vice versa
StringUtils.split("abc def"); // ["abc", "def"]
StringUtils.split("a.b.c", '.'); // ["a", "b", "c"]
StringUtils.split("ab:cd:ef", ":", 2); // ["ab", "cd:ef"] 2设定返回数组的最大长度
StringUtils.splitByWholeSeparator("ab-!-cd-!-ef", "-!-");
StringUtils.join("a", "b", "c"); // "abc"
// 还可使用: java.lang.String.split/join
"ab:cd:ef".split(":");
String.join("a", "b", "c"); // 12.Remove/Delete - removes part of a String
StringUtils.remove("queued", 'u'); // "qeed"
StringUtils.removeAll("A<__>\n<__>B", "<.*>"); // "A\nB"
StringUtils.removeAll("A<__>\n<__>B", "(?s)<.*>"); // "AB"
StringUtils.removeAll("ABCabc123abc", "[a-z]"); // "ABC123"
StringUtils.deleteWhitespace(" ab c "); // "abc" // 13.Replace/Overlay - Searches a String and replaces one String with another
StringUtils.replace("aba", "a", "z"); // "zbz"
StringUtils.replaceIgnoreCase("aba", "A", "z"); // "zbz"
StringUtils.replace("abaa", "a", "z", 1); // "zbaa"
StringUtils.replaceEach("abcde", new String[] { "ab", "d" }, new String[] { "d", "t" }); //"dcte"
StringUtils.overlay("abcdef", "zzzz", 2, 4); // "abzzzzef"
// 还可使用: java.lang.String.replace
"aba".replace("a", "z"); System.out.println(); // 官方文档:https://commons.apache.org/proper/commons-lang/javadocs/api-release/index.html
// jdk文档:http://tool.oschina.net/apidocs/apidoc?api=jdk_7u4
// 参考:https://www.cnblogs.com/linjiqin/p/3425359.html

apache StringUtils 工具类的更多相关文章

  1. StringUtils工具类常用方法汇总1(判空、转换、移除、替换、反转)

      Apache commons lang3包下的StringUtils工具类中封装了一些字符串操作的方法,非常实用,使用起来也非常方便.最近自己也经常在项目中使用到了里面的一些方法,在这里将常用的方 ...

  2. StringUtils工具类常用方法汇总(判空、转换、移除、替换、反转)

    Apache commons lang3包下的StringUtils工具类中封装了一些字符串操作的方法,非常实用,使用起来也非常方便.最近自己也经常在项目中使用到了里面的一些方法,在这里将常用的方法总 ...

  3. StringUtils工具类常用方法汇总:判空、转换、移除、替换、反转。

    Apache commons lang3包下的StringUtils工具类中封装了一些字符串操作的方法,非常实用,使用起来也非常方便.最近自己也经常在项目中使用到了里面的一些方法,在这里将常用的方法总 ...

  4. 通过CollectionUtils工具类判断集合是否为空,通过StringUtils工具类判断字符串是否为空

    通过CollectionUtils工具类判断集合是否为空 先引入CollectionUtils工具类: import org.apache.commons.collections4.Collectio ...

  5. Spring的StringUtils工具类

    本文是转载文章,感觉比较好,如有侵权,请联系本人,我将及时删除. 原文网址:<Spring的StringUtils工具类> org.springframework.util.StringU ...

  6. StringUtils工具类常用方法汇总2(截取、去除空白、包含、查询索引)

      在上一篇中总结了StringUtils工具类在判断字符串为空,大小写转换,移除字符或字符序列,替换,反转,切割合并等方面的方法,这次再汇总一下其它常用的方法. 一.截取   StringUtils ...

  7. StringUtils工具类常用方法

    前言:工作中看到项目组里的大牛写代码大量的用到了StringUtils工具类来做字符串的操作,便学习整理了一下,方便查阅. isEmpty(String str) 是否为空,空格字符为false is ...

  8. 基于StringUtils工具类的常用方法介绍(必看篇)

    前言:工作中看到项目组里的大牛写代码大量的用到了StringUtils工具类来做字符串的操作,便学习整理了一下,方便查阅. isEmpty(String str) 是否为空,空格字符为false is ...

  9. spring util包 StringUtils工具类中的isEmpty() 方法解析

    今天在公司看到同事写的代码,无意发现在判断字符串类型时,使用的是StringUtils工具类中的isEmpty()去判断如下所示 @RequestMapping(value = "/pub/ ...

随机推荐

  1. sqlserver常用语法

    --临时表 IF OBJECT_ID('tempdb..#Entry') is not null BEGIN   DROP TABLE #Entry   END ------------------- ...

  2. Algorithm Visualizer

    Algorithm Visualizer https://algorithm-visualizer.org/ https://algorithm-visualizer.org/divide-and-c ...

  3. JSON in SQL Server 2016

    JSON functions in SQL Server enable you to analyze and query JSON data, transform JSON to relational ...

  4. Nintex History in Form Table

    一.设置参数 二.调用WebService 三.For Each 调用 四.拼写HTML Table 结果: 特别提示:过滤人只要根据人来循环即可

  5. SQL Server 一张图让你秒懂联合表查询

  6. Oracle查看表空间,创建表空间

    查看表空间: SELECT tablespace_name, file_id, file_name, round(bytes / (1024 * 1024), 0) total_space FROM ...

  7. [十]SpringBoot 之 普通类获取Spring容器中的bean

    我们知道如果我们要在一个类使用spring提供的bean对象,我们需要把这个类注入到spring容器中,交给spring容器进行管理,但是在实际当中,我们往往会碰到在一个普通的Java类中,想直接使用 ...

  8. linux系统版本大全

    Linux系统下载地址:http://www.jb51.net/LINUXjishu/239493.html linux系统教学视频:http://www.uplinux.com/shipin/lin ...

  9. Luogu5280 ZJOI2019线段树(线段树)

    容易发现相当于求2m种操作序列所得的每种线段树tag数量之和.显然考虑每个点的贡献,也即有多少种方案会使该点上有tag.可以将点分为四类: 1.修改时被经过且有儿子被修改的节点 2.修改时被经过且没有 ...

  10. 洛谷P1402 酒店之王

    传送门:>Here< 题意:有N个人去酒店,酒店共有P个房间,Q道菜.已知每个人喜欢特定的几个房间和几道菜,一个人是满意的当且仅当住了喜欢的房间,吃了喜欢的菜(一个人只能选一个房间一道菜) ...