qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          Java中replace和replaceAll的區別

           replace和replaceAll是JAVA中常用的替換字符的方法,它們的區別是:
            1)replace的參數是char和CharSequence,即可以支持字符的替換,也支持字符串的替換(CharSequence即字符串序列的意思,說白了也就是字符串);
            2)replaceAll的參數是regex,即基于規則表達式的替換,比如,可以通過replaceAll("\\d", "*")把一個字符串所有的數字字符都換成星號;
            相同點是都是全部替換,即把源字符串中的某一字符或字符串全部換成指定的字符或字符串,如果只想替換第一次出現的,可以使用 replaceFirst(),這個方法也是基于規則表達式的替換,但與replaceAll()不同的是,只替換第一次出現的字符串;
            另外,如果replaceAll()和replaceFirst()所用的參數據不是基于規則表達式的,則與replace()替換字符串的效果是一樣的,即這兩者也支持字符串的操作;
            還有一點注意:執行了替換操作后,源字符串的內容是沒有發生改變的.
            舉例如下:
          String src = new String("ab43a2c43d");
          System.out.println(src.replace("3","f"));=>ab4f2c4fd.
          System.out.println(src.replace('3','f'));=>ab4f2c4fd.
          System.out.println(src.replaceAll("\\d","f"));=>abffafcffd.
          System.out.println(src.replaceAll("a","f"));=>fb43fc23d.
          System.out.println(src.replaceFirst("\\d,"f"));=>abf32c43d
          System.out.println(src.replaceFirst("4","h"));=>abh32c43d.
            如何將字符串中的"\"替換成"\\":
            String msgIn;
            String msgOut;
            msgOut=msgIn.replaceAll("\\\\",\\\\\\\\);
            ps:貌似這樣也可以:msgIn = msgIn.replaceAll("\\\\",\\\\\\\\);
            原因:
            '\'在java中是一個轉義字符,所以需要用兩個代表一個。例如System.out.println( "\\" ) ;只打印出一個"\"。但是'\'也是正則表達式中的轉義字符(replaceAll 的參數就是正則表達式),需要用兩個代表一個。所以:\\\\被java轉換成\\,\\又被正則表達式轉換成\。
            同樣
            CODE: \\\\\\\\
            Java: \\\\
            Regex: \\
            將字符串中的'/'替換成'\'的幾種方式:
            msgOut= msgIn.replaceAll("/", "\\\\");
            msgOut= msgIn.replace("/", "\\");
            msgOut= msgIn.replace('/', '\\');

          posted on 2014-11-06 10:39 順其自然EVO 閱讀(246) 評論(0)  編輯  收藏 所屬分類: 測試學習專欄

          <2014年11月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          30123456

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 东光县| 兴海县| 贡嘎县| 罗田县| 邓州市| 清苑县| 文昌市| 龙海市| 博乐市| 玉山县| 大新县| 宝鸡市| 辽宁省| 忻城县| 平原县| 驻马店市| 永兴县| 怀化市| 绥芬河市| 泰宁县| 肇源县| 井陉县| 乐至县| 阿鲁科尔沁旗| 宜州市| 射阳县| 甘肃省| 虞城县| 突泉县| 旬邑县| 虹口区| 黔西县| 赣榆县| 东兴市| 灯塔市| 宁津县| 岑溪市| 洛隆县| 牟定县| 子洲县| 吐鲁番市|