qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問 http://qaseven.github.io/

          Java中replace和replaceAll的區(qū)別

           replace和replaceAll是JAVA中常用的替換字符的方法,它們的區(qū)別是:
            1)replace的參數(shù)是char和CharSequence,即可以支持字符的替換,也支持字符串的替換(CharSequence即字符串序列的意思,說白了也就是字符串);
            2)replaceAll的參數(shù)是regex,即基于規(guī)則表達(dá)式的替換,比如,可以通過replaceAll("\\d", "*")把一個(gè)字符串所有的數(shù)字字符都換成星號(hào);
            相同點(diǎn)是都是全部替換,即把源字符串中的某一字符或字符串全部換成指定的字符或字符串,如果只想替換第一次出現(xiàn)的,可以使用 replaceFirst(),這個(gè)方法也是基于規(guī)則表達(dá)式的替換,但與replaceAll()不同的是,只替換第一次出現(xiàn)的字符串;
            另外,如果replaceAll()和replaceFirst()所用的參數(shù)據(jù)不是基于規(guī)則表達(dá)式的,則與replace()替換字符串的效果是一樣的,即這兩者也支持字符串的操作;
            還有一點(diǎn)注意:執(zhí)行了替換操作后,源字符串的內(nèi)容是沒有發(fā)生改變的.
            舉例如下:
          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中是一個(gè)轉(zhuǎn)義字符,所以需要用兩個(gè)代表一個(gè)。例如System.out.println( "\\" ) ;只打印出一個(gè)"\"。但是'\'也是正則表達(dá)式中的轉(zhuǎn)義字符(replaceAll 的參數(shù)就是正則表達(dá)式),需要用兩個(gè)代表一個(gè)。所以:\\\\被java轉(zhuǎn)換成\\,\\又被正則表達(dá)式轉(zhuǎn)換成\。
            同樣
            CODE: \\\\\\\\
            Java: \\\\
            Regex: \\
            將字符串中的'/'替換成'\'的幾種方式:
            msgOut= msgIn.replaceAll("/", "\\\\");
            msgOut= msgIn.replace("/", "\\");
            msgOut= msgIn.replace('/', '\\');

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

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

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 绥江县| 涟水县| 寻甸| 漯河市| 周口市| 石河子市| 晋江市| 蕉岭县| 永德县| 抚州市| 望城县| 长葛市| 新干县| 依安县| 灌南县| 盘山县| 天镇县| 墨竹工卡县| 正蓝旗| 天气| 阿克苏市| 仪陇县| 遂昌县| 靖远县| 怀化市| 曲阳县| 彝良县| 柏乡县| 虞城县| 威宁| 休宁县| 当阳市| 江安县| 景宁| 通榆县| 胶州市| 京山县| 璧山县| 广东省| 兴国县| 嘉祥县|