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 閱讀(249) 評論(0)  編輯  收藏 所屬分類: 測試學習專欄

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

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 宁强县| 祁阳县| 洞头县| 隆林| 昌宁县| 神农架林区| 乌拉特前旗| 托克托县| 洪江市| 舒兰市| 桓台县| 文登市| 定日县| 勐海县| 瑞丽市| 合阳县| 夹江县| 美姑县| 枣阳市| 黄浦区| 安泽县| 英吉沙县| 望江县| 怀宁县| 南开区| 绥宁县| 鄂托克旗| 墨玉县| 东至县| 习水县| 怀柔区| 虞城县| 靖远县| 宜阳县| 腾冲县| 安新县| 榆社县| 绍兴市| 鄢陵县| 阳春市| 富顺县|