<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-5  評論-22  文章-35  trackbacks-0

    最近在網上搜集了一些java中字符串替換的方法。

    ? 1. /**
    ? * 字符串替換函數
    ? * @param from 要替換的字符
    ? * @param to 要替換成的目標字符
    ? * @param source 要替換的字符串
    ? * @return 替換后的字符串
    ? */
    ? import java.util.StringTokenizer;

    ? public String str_replace(String from,String to,String source) {
    ??? StringBuffer bf= new StringBuffer("");
    ??? StringTokenizer st = new StringTokenizer(source,from,true);
    ??? while (st.hasMoreTokens()) {
    ????? String tmp = st.nextToken();
    ????? if(tmp.equals(from)) {
    ??????? bf.append(to);
    ????? } else {
    ??????? bf.append(tmp);
    ????? }
    ??? }
    ??? return bf.toString();
    ? }

    2. /*
    ?*字符串替換函數,另一種方法的實現
    ?*/
    ? public String str_replace2(String con ,String tag,String rep){
    ??? int j=0;
    ??? int i=0;
    ??? int k=0;
    ??? String RETU="";
    ??? String temp =con;
    ??? int tagc =tag.length();
    ??? while(i<con.length()){
    ????? if(con.substring(i).startsWith(tag)){
    ??????? temp =con.substring(j,i)+rep;
    ??????? RETU+= temp;
    ??????? i+=tagc;
    ??????? j=i;
    ????? }else{
    ??????? i+=1;
    ????? }
    ??? }
    ??? RETU +=con.substring(j);
    ??? return RETU;
    ? }??

    3.

    ? public static String replace(String strSource, String strFrom, String strTo) {
    ??? if(strFrom == null || strFrom.equals(""))
    ????? return strSource;
    ??? String strDest = "";
    ??? int intFromLen = strFrom.length();
    ??? int intPos;
    ??? while((intPos = strSource.indexOf(strFrom)) != -1) {
    ????? strDest = strDest + strSource.substring(0,intPos);
    ????? strDest = strDest + strTo;
    ????? strSource = strSource.substring(intPos + intFromLen);
    ??? }
    ??? strDest = strDest + strSource;
    ????? return strDest;
    ? }


    4.高效替換程序。

    ? public static String replace(String strSource, String strFrom, String strTo) {???
    ??? if (strSource == null) {???????
    ????? return null;???
    ??? }?
    ??? int i = 0;
    ??? if ((i = strSource.indexOf(strFrom, i)) >= 0) {
    ????? char[] cSrc = strSource.toCharArray();
    ????? char[] cTo = strTo.toCharArray();
    ????? int len = strFrom.length();?
    ????? StringBuffer buf = new StringBuffer(cSrc.length);?
    ????? buf.append(cSrc, 0, i).append(cTo);
    ????? i += len;???
    ????? int j = i;??????
    ????? while ((i = strSource.indexOf(strFrom, i)) > 0) {?
    ??????? buf.append(cSrc, j, i - j).append(cTo);??
    ??????? i += len;?
    ??????? j = i;???????
    ????? }???????
    ????? buf.append(cSrc, j, cSrc.length - j);
    ????? return buf.toString();
    ??? }
    ??? return strSource;
    ? }

    posted on 2006-06-08 09:06 fish的Blog 閱讀(38999) 評論(4)  編輯  收藏 所屬分類: Jsp

    評論:
    # re: Java中字符串的替換 2012-07-26 10:09 | RickyLee
    String a="cabcd";
    a=a.replaceAll("abc","cba");
    System.out.println(a);  回復  更多評論
      
    # re: Java中字符串的替換 [未登錄] 2013-05-03 09:54 | tbw
    非常有用的   回復  更多評論
      
    # re: Java中字符串的替換 [未登錄] 2013-05-03 09:54 | tbw
    非常有用的  回復  更多評論
      
    # re: Java中字符串的替換 2013-06-17 22:09 | ldwtzw
    我要把手機號碼的中間4到8位數字替換成*
    用盡可能高效率的方法。  回復  更多評論
      
    主站蜘蛛池模板: 婷婷综合缴情亚洲狠狠尤物| 国产成人免费午夜在线观看| 国产精品久久香蕉免费播放| 亚洲av永久无码嘿嘿嘿| 最近中文字幕高清免费中文字幕mv| 情人伊人久久综合亚洲| 国产99久久久久久免费看| 国产亚洲精品看片在线观看 | 99视频在线观看免费| av在线亚洲欧洲日产一区二区| 国产亚洲午夜精品| 免费人妻无码不卡中文字幕18禁| 国产成人高清亚洲一区91| 亚洲成AV人在线观看网址| AAAAA级少妇高潮大片免费看| 国产亚洲色视频在线| 国产一级高青免费| 久久久久久亚洲精品| 亚洲一区在线免费观看| 亚洲精品国产suv一区88| 国产成人在线观看免费网站 | 亚洲精品无码久久久久去q| XXX2高清在线观看免费视频| 亚洲av无码精品网站| 亚欧色视频在线观看免费| 亚洲精品国产首次亮相| 一本色道久久综合亚洲精品高清| 午夜理伦剧场免费| 亚洲伊人色一综合网| 国产精品免费看久久久无码| 一级毛片在线完整免费观看| 亚洲va久久久噜噜噜久久狠狠 | 久久午夜夜伦鲁鲁片免费无码| 亚洲成a人片在线观看中文!!!| 午夜成人免费视频| 男人免费视频一区二区在线观看| 亚洲无码精品浪潮| 1000部夫妻午夜免费| 婷婷亚洲综合五月天小说在线| 久久亚洲国产欧洲精品一| 免费看国产成年无码AV片|