zoukankan      html  css  js  c++  java
  • 转载自:StringUtils的常见方法

    转载自:https://blog.csdn.net/simple_smile_sun/article/details/51819158

      1 注:运用StringUtils需要导入相关jar文件,commons-lang3-3.1.jar
      2 
      3 
      4 
      5 import org.apache.commons.lang3.StringUtils;
      6 
      7 public static void main(String[] args) {
      8 
      9         String str = "dskeabceead";
     10 
     11         String after = StringUtils.substringAfter(str, "e");
     12         System.out.println("after:"+after);
     13 
     14         String afterLast = StringUtils.substringAfterLast(str, "e");
     15         System.out.println("afterLast:"+afterLast);
     16         
     17         String before = StringUtils.substringBefore(str, "e");
     18         System.out.println("before:"+before);
     19 
     20         String beforeLast = StringUtils.substringBeforeLast(str, "e");
     21         System.out.println("beforeLast:"+beforeLast);
     22         
     23     }
     24 
     25 
     26 
     27 运行结果:
     28 
     29     after:abceead
     30     afterLast:ad
     31     before:dsk
     32     beforeLast:dskeabce
     33 
     34 
     35 
     36 其它方法不再一一验证:
     37 
     38 1. public static boolean isEmpty(String str) 
     39    判断某字符串是否为空,为空的标准是 str==null 或 str.length()==0 
     40    下面是 StringUtils 判断是否为空的示例:
     41 
     42 StringUtils.isEmpty(null) = true
     43 StringUtils.isEmpty("") = true 
     44 StringUtils.isEmpty(" ") = false //注意在 StringUtils 中空格作非空处理
     45 StringUtils.isEmpty("   ") = false
     46 StringUtils.isEmpty("bob") = false
     47 StringUtils.isEmpty(" bob ") = false
     48 
     49  
     50 
     51 2. public static boolean isNotEmpty(String str) 
     52    判断某字符串是否非空,等于 !isEmpty(String str) 
     53    下面是示例:
     54 
     55       StringUtils.isNotEmpty(null) = false
     56       StringUtils.isNotEmpty("") = false
     57       StringUtils.isNotEmpty(" ") = true
     58       StringUtils.isNotEmpty("         ") = true
     59       StringUtils.isNotEmpty("bob") = true
     60       StringUtils.isNotEmpty(" bob ") = true 
     61 
     62 3. public static boolean isBlank(String str) 
     63    判断某字符串是否为空或长度为0或由空白符(whitespace) 构成
     64    下面是示例:
     65       StringUtils.isBlank(null) = true
     66       StringUtils.isBlank("") = true
     67       StringUtils.isBlank(" ") = true
     68       StringUtils.isBlank("        ") = true
     69       StringUtils.isBlank("	 
     f 
    ") = true   //对于制表符、换行符、换页符和回车符
     70 
     71       StringUtils.isBlank()   //均识为空白符
     72       StringUtils.isBlank("") = false   //""为单词边界符
     73       StringUtils.isBlank("bob") = false
     74       StringUtils.isBlank(" bob ") = false 
     75 
     76 4. public static boolean isNotBlank(String str) 
     77    判断某字符串是否不为空且长度不为0且不由空白符(whitespace) 构成,等于 !isBlank(String str) 
     78    下面是示例:
     79 
     80       StringUtils.isNotBlank(null) = false
     81       StringUtils.isNotBlank("") = false
     82       StringUtils.isNotBlank(" ") = false
     83       StringUtils.isNotBlank("         ") = false
     84       StringUtils.isNotBlank("	 
     f 
    ") = false
     85       StringUtils.isNotBlank("") = true
     86       StringUtils.isNotBlank("bob") = true
     87       StringUtils.isNotBlank(" bob ") = true 
     88 
     89 5. public static String trim(String str) 
     90    去掉字符串两端的控制符(control characters, char <= 32) , 如果输入为 null 则返回null 
     91    下面是示例:
     92       StringUtils.trim(null) = null
     93       StringUtils.trim("") = ""
     94       StringUtils.trim(" ") = ""
     95       StringUtils.trim("   	 
     f 
        ") = ""
     96       StringUtils.trim("     
    	ss   ") = "ss"
     97       StringUtils.trim(" d   d dd     ") = "d   d dd"
     98       StringUtils.trim("dd     ") = "dd"
     99       StringUtils.trim("     dd       ") = "dd" 
    100 
    101 6. public static String trimToNull(String str) 
    102    去掉字符串两端的控制符(control characters, char <= 32) ,如果变为 null 或"",则返回 null 
    103    下面是示例:
    104       StringUtils.trimToNull(null) = null
    105       StringUtils.trimToNull("") = null
    106       StringUtils.trimToNull(" ") = null
    107       StringUtils.trimToNull("      	 
     f 
        ") = null
    108       StringUtils.trimToNull("     
    	ss   ") = "ss"
    109       StringUtils.trimToNull(" d   d dd     ") = "d   d dd"
    110       StringUtils.trimToNull("dd     ") = "dd"
    111       StringUtils.trimToNull("     dd       ") = "dd" 
    112 
    113 7. public static String trimToEmpty(String str) 
    114    去掉字符串两端的控制符(control characters, char <= 32) ,如果变为 null 或 "" ,则返回 "" 
    115    下面是示例:
    116       StringUtils.trimToEmpty(null) = ""
    117       StringUtils.trimToEmpty("") = ""
    118       StringUtils.trimToEmpty(" ") = ""
    119       StringUtils.trimToEmpty("      	 
     f 
        ") = ""
    120       StringUtils.trimToEmpty("     
    	ss   ") = "ss"
    121       StringUtils.trimToEmpty(" d   d dd     ") = "d   d dd"
    122       StringUtils.trimToEmpty("dd     ") = "dd"
    123       StringUtils.trimToEmpty("     dd       ") = "dd" 
    124 
    125 8. public static String strip(String str) 
    126    去掉字符串两端的空白符(whitespace) ,如果输入为 null 则返回 null 
    127    下面是示例(注意和 trim() 的区别):
    128       StringUtils.strip(null) = null
    129       StringUtils.strip("") = ""
    130       StringUtils.strip(" ") = ""
    131       StringUtils.strip("      	 
     f 
        ") = ""
    132       StringUtils.strip("     
    	ss   ") = "ss   "
    133       StringUtils.strip(" d   d dd     ") = "d   d dd"
    134       StringUtils.strip("dd     ") = "dd"
    135       StringUtils.strip("     dd       ") = "dd" 
    136 
    137 9. public static String stripToNull(String str) 
    138    去掉字符串两端的空白符(whitespace) ,如果变为 null 或"",则返回 null 
    139    下面是示例(注意和 trimToNull() 的区别):
    140       StringUtils.stripToNull(null) = null
    141       StringUtils.stripToNull("") = null
    142       StringUtils.stripToNull(" ") = null
    143       StringUtils.stripToNull("      	 
     f 
        ") = ""
    144       StringUtils.stripToNull("     
    	ss   ") = "ss   "
    145       StringUtils.stripToNull(" d   d dd     ") = "d   d dd"
    146       StringUtils.stripToNull("dd     ") = "dd"
    147       StringUtils.stripToNull("     dd       ") = "dd" 
    148 
    149 10. public static String stripToEmpty(String str) 
    150     去掉字符串两端的空白符(whitespace) ,如果变为 null 或"" ,则返回"" 
    151     下面是示例(注意和 trimToEmpty() 的区别):
    152       StringUtils.stripToNull(null) = ""
    153       StringUtils.stripToNull("") = ""
    154       StringUtils.stripToNull(" ") = ""
    155       StringUtils.stripToNull("      	 
     f 
        ") = ""
    156       StringUtils.stripToNull("     
    	ss   ") = "ss   "
    157       StringUtils.stripToNull(" d   d dd     ") = "d   d dd"
    158       StringUtils.stripToNull("dd     ") = "dd"
    159       StringUtils.stripToNull("     dd       ") = "dd" 
    160 
    161 以下方法只介绍其功能,不再举例:
    162 11. public static String strip(String str, String stripChars) 
    163    去掉 str 两端的在 stripChars 中的字符。
    164    如果 str 为 null 或等于"" ,则返回它本身;
    165    如果 stripChars 为 null 或"" ,则返回 strip(String str) 。
    166 
    167 12. public static String stripStart(String str, String stripChars) 
    168     和11相似,去掉 str 前端的在 stripChars 中的字符。
    169 
    170 13. public static String stripEnd(String str, String stripChars) 
    171     和11相似,去掉 str 末端的在 stripChars 中的字符。
    172 
    173 14. public static String[] stripAll(String[] strs) 
    174     对字符串数组中的每个字符串进行 strip(String str) ,然后返回。
    175     如果 strs 为 null 或 strs 长度为0,则返回 strs 本身
    176 
    177 15. public static String[] stripAll(String[] strs, String stripChars) 
    178     对字符串数组中的每个字符串进行 strip(String str, String stripChars) ,然后返回。
    179     如果 strs 为 null 或 strs 长度为0,则返回 strs 本身
    180 
    181 16. public static boolean equals(String str1, String str2) 
    182     比较两个字符串是否相等,如果两个均为空则也认为相等。
    183 
    184 17. public static boolean equalsIgnoreCase(String str1, String str2) 
    185     比较两个字符串是否相等,不区分大小写,如果两个均为空则也认为相等。
    186 
    187 18. public static int indexOf(String str, char searchChar) 
    188     返回字符 searchChar 在字符串 str 中第一次出现的位置。
    189     如果 searchChar 没有在 str 中出现则返回-1190     如果 str 为 null 或 "" ,则也返回-1
    191 
    192 19. public static int indexOf(String str, char searchChar, int startPos) 
    193     返回字符 searchChar 从 startPos 开始在字符串 str 中第一次出现的位置。
    194     如果从 startPos 开始 searchChar 没有在 str 中出现则返回-1195     如果 str 为 null 或 "" ,则也返回-1
    196 
    197 20. public static int indexOf(String str, String searchStr) 
    198     返回字符串 searchStr 在字符串 str 中第一次出现的位置。
    199     如果 str 为 null 或 searchStr 为 null 则返回-1200     如果 searchStr 为 "" ,且 str 为不为 null ,则返回0,
    201     如果 searchStr 不在 str 中,则返回-1
    202 
    203 21. public static int ordinalIndexOf(String str, String searchStr, int ordinal) 
    204     返回字符串 searchStr 在字符串 str 中第 ordinal 次出现的位置。
    205     如果 str=null 或 searchStr=null 或 ordinal<=0 则返回-1
    206     举例(*代表任意字符串):
    207       StringUtils.ordinalIndexOf(null, *, *) = -1
    208       StringUtils.ordinalIndexOf(*, null, *) = -1
    209       StringUtils.ordinalIndexOf("", "", *) = 0
    210       StringUtils.ordinalIndexOf("aabaabaa", "a", 1) = 0
    211       StringUtils.ordinalIndexOf("aabaabaa", "a", 2) = 1
    212       StringUtils.ordinalIndexOf("aabaabaa", "b", 1) = 2
    213       StringUtils.ordinalIndexOf("aabaabaa", "b", 2) = 5
    214       StringUtils.ordinalIndexOf("aabaabaa", "ab", 1) = 1
    215       StringUtils.ordinalIndexOf("aabaabaa", "ab", 2) = 4
    216       StringUtils.ordinalIndexOf("aabaabaa", "bc", 1) = -1
    217       StringUtils.ordinalIndexOf("aabaabaa", "", 1) = 0
    218       StringUtils.ordinalIndexOf("aabaabaa", "", 2) = 0 
    219 
    220 22. public static int indexOf(String str, String searchStr, int startPos) 
    221     返回字符串 searchStr 从 startPos 开始在字符串 str 中第一次出现的位置。
    222     举例(*代表任意字符串):
    223       StringUtils.indexOf(null, *, *) = -1
    224       StringUtils.indexOf(*, null, *) = -1
    225       StringUtils.indexOf("", "", 0) = 0
    226       StringUtils.indexOf("aabaabaa", "a", 0) = 0
    227       StringUtils.indexOf("aabaabaa", "b", 0) = 2
    228       StringUtils.indexOf("aabaabaa", "ab", 0) = 1
    229       StringUtils.indexOf("aabaabaa", "b", 3) = 5
    230       StringUtils.indexOf("aabaabaa", "b", 9) = -1
    231       StringUtils.indexOf("aabaabaa", "b", -1) = 2
    232       StringUtils.indexOf("aabaabaa", "", 2) = 2
    233       StringUtils.indexOf("abc", "", 9) = 3 
    234 
    235 23. public static int lastIndexOf(String str, char searchChar) 
    236     基本原理同18
    237 
    238 24. public static int lastIndexOf(String str, char searchChar, int startPos) 
    239     基本原理同19
    240 
    241 25. public static int lastIndexOf(String str, String searchStr) 
    242     基本原理同20
    243 
    244 26. public static int lastIndexOf(String str, String searchStr, int startPos) 
    245     基本原理同22

    另附:
    String 的 split(String regex)   方法的用法
    如果我们需要把某个字符串拆分为字符串数组,则通常用 split(String regex) 来实现。

    例如:

    1 String str = "aa,bb,cc,dd";     
    2 String[] strArray = str.split(",");      
    3 System.out.println(strArray.length);     
    4   for (int i = 0; i < strArray.length; i++) {     
    5        System.out.println(strArray[i]);     
    6 }  

    结果为:
    4
    aa
    bb
    cc
    dd 

    如果,
    String str = "aa.bb.cc.dd";
    String[] strArray = str.split("."); 

    则结果为:0

    为什么结果不是我们所想的呢,原因是参数 String regex 是正则表达式 (regular expression) 而不是普通字符串,而 "." 在正则表达式中有特殊含义,表示匹配所有单个字符。如果要那样拆分,我们必须给 "." 进行转义,String[] strArray = str.split(".") 修改为 String[] strArray = str.split("\.") 即可。
    另外有关 StringUtils 的详细 API 请参见http://commons.apache.org/proper/commons-lang/javadocs/api-2.6/org/apache/commons/lang/StringUtils.html

    转载自:https://blog.csdn.net/simple_smile_sun/article/details/51819158

  • 相关阅读:
    Node.js中,获取req请求的原始IP
    socket原理详解
    让Redis在你的系统中发挥更大作用
    Redis复制与可扩展集群搭建【转】
    Linux下查看日志用到的常用命令
    Linux curl命令详解
    Linux 系统结构详解【转】
    网络IO之阻塞、非阻塞、同步、异步总结
    消息队列设计精要【转】
    MySQL的DDL语句、DML语句与DCL语句
  • 原文地址:https://www.cnblogs.com/mySummer/p/11269061.html
Copyright © 2011-2022 走看看