zoukankan      html  css  js  c++  java
  • 字符串替换方法的优劣

    需求String str =  "中aacabbbaac中sabbcccdddddeee";  

         String[] findStr = {"aa","b","c","d","e","f","g"} ; 

             String[] repStr = {"A","B","C","D","E","F","G"} ;  

    在str中查找findStr中的字符串,如果找到则替换成与findSt索引位置对应的repStr数组中的字符串元素。

    方法一:int len = findStr.length ;
               for(int i=0 ; i<len ;i++){
           str = str.replace(findStr[i], repStr[i]);
        }

    方法二: int len = findStr.length ;

                StringBuffer sf = new StringBuffer(str) ;
         for(int i=0 ; i<len ;i++){

             while(iStart > -1)
                  {
                iStart = sf.indexOf(gjcMcStr[i]) ;
                               if(iStart > -1)
                                         sf.replace(iStart, iStart+gjcMcStr[i].length(), gjcTdcStr[i]) ;
                               else
                                         break ;
                       }
                 }

                 str = sf.toString() ;

    方法三:

          Map<String,String> map=new HashMap<String,String>();
          map.put("aa", "A");
          map.put("b", "B");
          map.put("c", "C");
          map.put("d", "D");
          map.put("e", "E");
          map.put("f", "F");
          map.put("g", "G");  

                 Matcher matcher = Pattern.compile("(?:aa|b|c|d|e|f|g)").matcher(str);

          StringBuffer sf = new StringBuffer();
      
          while (matcher.find()) {
             matcher.appendReplacement(sf, map.get(matcher.group()));
          }
          matcher.appendTail(sf);

           str = sf.toString() ;

  • 相关阅读:
    Android框架之路——OkGo的使用
    recyclerview23+出现多个item只显示第一个item的问题
    Spark MLlib回归算法LinearRegression
    Spark MLlib聚类KMeans
    Impala性能优化
    Impala通过JDBC方式访问
    Impala与HBase整合
    Impala数据处理(加载和存储)
    Impala SQL
    Impala储存与分区
  • 原文地址:https://www.cnblogs.com/hzhuxin/p/2573632.html
Copyright © 2011-2022 走看看