隨筆 - 3  文章 - 1  trackbacks - 0
          <2007年3月>
          25262728123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿(2)

          隨筆檔案

          文章分類

          文章檔案

          搜索

          •  

          最新評論

          • 1.?re: 不好的項目演示
          • 雖然項目演示失務,但我相信你的項目是最成功的,因為你的態度,你的聰明.

            You are NO.1! my lover
          • --roy117

          閱讀排行榜

          評論排行榜

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

          ?

          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 的情況處理很得體),到分割子串,到生成格式化的字符串,使用都很簡潔,也很直截了當。

          posted on 2007-03-16 22:32 terryliu 閱讀(401) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 涞源县| 津南区| 吉木乃县| 伊宁县| 红河县| 黑龙江省| 荥经县| 辉南县| 于都县| 龙游县| 聊城市| 洛阳市| 凤凰县| 孟州市| 进贤县| 诏安县| 宁晋县| 临潭县| 临沧市| 灵川县| 镶黄旗| 广南县| 绥棱县| 石泉县| 宿州市| 蓬溪县| 桓仁| 扶沟县| 凭祥市| 清河县| 诸暨市| 兰考县| 大荔县| 清徐县| 和林格尔县| 长垣县| 夏邑县| 大余县| 武城县| 蛟河市| 青冈县|