糊言亂語

          志未半斤, 才無八兩. 有苦有樂, 糊涂過活。
          posts - 25, comments - 7, trackbacks - 0, articles - 42
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          處理文本對Java應用來說應該算是家常便飯了,在1.4出現之前,Java自身提供的API非常有限,如StringStringTokenizerStringBuffer,操作也比較單一。無非就是查找substring、分解、合并等等。到1.4的出現可以說Java的文字處理上了一個臺階,因為它支持regular expression了。這可是個重量級而方便的東東啊,缺點是太復雜,學習起來有一定難度。相較而言,Jakarta Commons提供的StringUtilsWordUtils至今還維持著那種簡潔而強大的美,使用起來也很順手。來看一個例子:

           

          package sean.study.jakarta.commons.lang;

           

          import org.apache.commons.lang.StringUtils;

           

          public class StringUtilsAndWordUtilsUsage {

           

              public static void main(String[] args) {

                 

                  // data setup

                  String str1 = "";

                  String str2 = " ";

                  String str3 = "\t";

                  String str4 = null;

                  String str5 = "123";

                  String str6 = "ABCDEFG";

                  String str7 = "It feels good to use Jakarta Commons.\r\n";

                 

                  // check for empty strings

                  System.out.println("==============================");

                  System.out.println("Is str1 blank? " + StringUtils.isBlank(str1));

                  System.out.println("Is str2 blank? " + StringUtils.isBlank(str2));

                  System.out.println("Is str3 blank? " + StringUtils.isBlank(str3));

                  System.out.println("Is str4 blank? " + StringUtils.isBlank(str4));

                 

                  // check for numerics

                  System.out.println("==============================");

                  System.out.println("Is str5 numeric? " + StringUtils.isNumeric(str5));

                  System.out.println("Is str6 numeric? " + StringUtils.isNumeric(str6));

                 

                  // reverse strings / whole words

                  System.out.println("==============================");

                  System.out.println("str6: " + str6);

                  System.out.println("str6 reversed: " + StringUtils.reverse(str6));

                  System.out.println("str7: " + str7);

                  String str8 = StringUtils.chomp(str7);

                  str8 = StringUtils.reverseDelimited(str8, ' ');

                  System.out.println("str7 reversed whole words : \r\n" + str8);

                 

                  // build header (useful to print log messages that are easy to locate)

                  System.out.println("==============================");

                  System.out.println("print header:");

                  String padding = StringUtils.repeat("=", 50);

                  String msg = StringUtils.center(" Customised Header ", 50, "%");

                  Object[] raw = new Object[]{padding, msg, padding};

                  String header = StringUtils.join(raw, "\r\n");

                  System.out.println(header);

           

              }

          }

           

          輸出的結果如下:

           

          ==============================

          Is str1 blank? true

          Is str2 blank? true

          Is str3 blank? true

          Is str4 blank? true

          ==============================

          Is str5 numeric? true

          Is str6 numeric? false

          ==============================

          str6: ABCDEFG

          str6 reversed: GFEDCBA

          str7: It feels good to use Jakarta Commons.

           

          str7 reversed whole words :

          Commons. Jakarta use to good feels It

          ==============================

          print header:

          ==================================================

          %%%%%%%%%%%%%%% Customised Header %%%%%%%%%%%%%%%%

          ==================================================

           

          從代碼中我們可以大致了解到這個StringUtils類簡單而強大的處理能力,從檢查空串(對null的情況處理很得體),到分割子串,到生成格式化的字符串,使用都很簡潔,也很直截了當。
          主站蜘蛛池模板: 博客| 日喀则市| 武穴市| 石嘴山市| 中宁县| 永定县| 平武县| 威宁| 九龙城区| 方正县| 清镇市| 巧家县| 得荣县| 六盘水市| 盐池县| 玛沁县| 德格县| 偃师市| 明光市| 永康市| 宝山区| 金沙县| 泗水县| 乌拉特后旗| 兴文县| 宣恩县| 泽州县| 翁源县| 策勒县| 长丰县| 洱源县| 锡林郭勒盟| 平山县| 海阳市| 梧州市| 囊谦县| 绥中县| 襄垣县| 邯郸县| 内丘县| 永昌县|