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() ;

  • 相关阅读:
    1.python的Helloword
    java实现多个属性排序---按照实体的多种属性值进行排序(ComparableComparator/ComparatorChain)
    Spring Boot 2.X(一):入门篇
    Nginx开启Gzip压缩提升页面加载速度
    QQ第三方授权登录OAuth2.0实现(Java)
    Windows下IIS搭建Ftp服务器
    【Java】支付宝获取人脸采集认证的图片base64格式
    【SpingBoot】spring静态工具类注入问题
    【linux】Tomcat 安装
    【linux】jdk安装及环境变量配置
  • 原文地址:https://www.cnblogs.com/hzhuxin/p/2573632.html
Copyright © 2011-2022 走看看