精华内容
下载资源
问答
  • java字符替换

    2020-03-20 22:46:23
    请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 代码 public class Solution { public String replaceSpace(StringBuffer str...

    题目描述

    请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

    代码

    public class Solution {
        public String replaceSpace(StringBuffer str) {
            if(str==null){
                return null;
            }
           StringBuilder newStr = new StringBuilder();
            for(int i=0;i<str.length();i++){
                if(str.charAt(i)==' '){
                    newStr.append('%');
                    newStr.append('2');
                    newStr.append('0');
                }else{
                    newStr.append(str.charAt(i));
                }
            }
            return newStr.toString();
        }
    }
    
    展开全文
  • Java语言】Java 字符替换效率比较

    千次阅读 2019-04-23 14:26:13
    Java语言】Java 字符替换效率比较
                   
     public static String encode(String str) {  if(str == null) {   return null;  }  str = str.replace('+', '~');  str = str.replace('/', '_');  str = str.replace('=', '.');  return str; }  public static String encode2(String str) {  if(str == null) {   return null;  }  str = str.replace("+", "~");  str = str.replace("/", "_");  str = str.replace("=", ".");  return str; }  public static String encode3(String str) {  if(str == null) {   return null;  }  char[] array = str.toCharArray();  for (int i = 0, length = array.length; i < length; i++) {   if(array[i] == '+') {    array[i] = '~';   } else if(array[i] == '/') {    array[i] = '_';   } else if(array[i] == '=') {    array[i] = '.';   }  }  return new String(array); }


    写了如上三个方法,3个方法都能达到字符替换的效果,但是效率不一样;第一种、第二种方式都是遍历三遍, 第三种遍历一遍;



    测试字符串为: 

    String str = "asdasddasd+asd/asdadas======asdasd++++++++//===kkkklakdjfh";


    执行1000000次,结果为:

    3031

    51706

    1401


    第三种数组的效率最高啊;



    测试字符串为:

    String str = "asdasddasdasdasddasdasdasddasdasdasddasdasdasddasdasdasddasdasdasddasd";


    执行1000000次,结果为:

    1169

    22874

    1496


    第一种replace的效率反而高了。


    原因是replace方法会先去查找字符串中是否包含需要替换的字符,如果没有就直接返回了,有才会去遍历替换(下面是replace源码,有兴趣的可以看下); 所以当目标字符串中不包含需要替换的字符时,replace效率最高;


    在日常开发中,就不要折腾了,直接调用replace来处理即可。



        public String replace(char oldChar, char newChar) if (oldChar != newChar) {     int len = count;     int i = -1;     char[] val = value; /* avoid getfield opcode */     int off = offset;   /* avoid getfield opcode */     while (++i < len) {  if (val[off + i] == oldChar) {      break;  }     }     if (i < len) {  char buf[] = new char[len];  for (int j = 0 ; j < i ; j++) {      buf[j] = val[off+j];  }  while (i < len) {      char c = val[off + i];      buf[i] = (c == oldChar) ? newChar : c;      i++;  }  return new String(0, len, buf);     } } return this;    }



               
    展开全文
  • java 字符替换 replace String src = new String("ab43a2c43d"); System.out.println(src.replace("3","f"));=>ab4f2c4fd. System.out.println(src.replace('3','f'));=>ab4f2c4fd. Sys...

    string

     java 字符替换 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.    
     

    replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也就是字符串);

    2)replaceAll的参数是regex,即基于正则表达式的替换,比如,可以通过replaceAll("\\d", "*")把一个字符串所有的数字字符都换成星号;

    相同点:

    都是全部替换,即把源字符串中的某一字符或字符串全部换成指定的字符或字符串,如果只想替换第一次出现的,可以使用replaceFirst(),这个方法也是基于规则表达式的替换,但与replaceAll()不同的是,只替换第一次出现的字符串;
     

    /*
     *    Copyright (c) 2018-2025, god-king All rights reserved.
     *
     * Redistribution and use in source and binary forms, with or without
     * modification, are permitted provided that the following conditions are met:
     *
     * Redistributions of source code must retain the above copyright notice,
     * this list of conditions and the following disclaimer.
     * Redistributions in binary form must reproduce the above copyright
     * notice, this list of conditions and the following disclaimer in the
     * documentation and/or other materials provided with the distribution.
     * Neither the name of the god.com developer nor the names of its
     * contributors may be used to endorse or promote products derived from
     * this software without specific prior written permission.
     * Author: god-king (1830278686@qq.com)
     */
    
    package com.king.god.admin;
    
    import org.junit.Test;
    
    /**
     * @author god-king
     */
    public class GodAdminApplicationTest {
    
        @Test
        public void test() {
            String df="2";
            String[] sdf=df.split(",");
            for (String s : sdf) {
                System.out.println(s);
            }
    
    
        }
    }

     切割

    public static void main(String[] args){
            String s = "my String is s";
            boolean result1 = s.contains("my name");
            boolean result2 = s.contains("my is");
            boolean result3 = s.contains("my String");
            System.out.println("result1 is "+result1+"; result2 is "+result2+"; result3 is "+result3);
    }
    

    结果:result1 is false;

    result2 is false;

    result3 is true

     

    含有完全的字符串时才返回true。
    当且仅当此字符串包含指定的 char 值序列时,返回 true”即对于指定的字符串要完全匹配,不可以有额外的字符。

    展开全文
  • http://192.168.1.254\record\2015Y04M03D14H\19M00S.mp4?custom=1&cmd=4001 怎么把里面的 \ 替换换成 / ?
  • Java 字符替换效率比较

    千次阅读 2012-09-25 16:44:58
    http://blog.csdn.net/feng88724/article/details/7974355 [java] view plaincopyprint? public static String encode(String str) {   if(str == null) {   return null;
    
    
    http://blog.csdn.net/feng88724/article/details/7974355
    1. public static String encode(String str) {  
    2.     if(str == null) {  
    3.         return null;  
    4.     }  
    5.     str = str.replace('+''~');  
    6.     str = str.replace('/''_');  
    7.     str = str.replace('=''.');  
    8.     return str;  
    9. }  
    10.   
    11. public static String encode2(String str) {  
    12.     if(str == null) {  
    13.         return null;  
    14.     }  
    15.     str = str.replace("+""~");  
    16.     str = str.replace("/""_");  
    17.     str = str.replace("="".");  
    18.     return str;  
    19. }  
    20.   
    21. public static String encode3(String str) {  
    22.     if(str == null) {  
    23.         return null;  
    24.     }  
    25.     char[] array = str.toCharArray();  
    26.     for (int i = 0, length = array.length; i < length; i++) {  
    27.         if(array[i] == '+') {  
    28.             array[i] = '~';  
    29.         } else if(array[i] == '/') {  
    30.             array[i] = '_';  
    31.         } else if(array[i] == '=') {  
    32.             array[i] = '.';  
    33.         }  
    34.     }  
    35.     return new String(array);  
    36. }  


    写了如上三个方法,3个方法都能达到字符替换的效果,但是效率不一样;第一种、第二种方式都是遍历三遍, 第三种遍历一遍;



    测试字符串为:

    String str = "asdasddasd+asd/asdadas======asdasd++++++++//===kkkklakdjfh";


    执行1000000次,结果为:

    3031

    51706

    1401


    第三种数组的效率最高啊;



    测试字符串为:

    String str = "asdasddasdasdasddasdasdasddasdasdasddasdasdasddasdasdasddasdasdasddasd";


    执行1000000次,结果为:

    1169

    22874

    1496


    第一种replace的效率反而高了。


    原因是replace方法会先去查找字符串中是否包含需要替换的字符,如果没有就直接返回了,有才会去遍历替换(下面是replace源码,有兴趣的可以看下); 所以当目标字符串中不包含需要替换的字符时,replace效率最高;


    在日常开发中,就不要折腾了,直接调用replace来处理即可。



    1.    public String replace(char oldChar, char newChar) {  
    2. if (oldChar != newChar) {  
    3.     int len = count;  
    4.     int i = -1;  
    5.     char[] val = value; /* avoid getfield opcode */  
    6.     int off = offset;   /* avoid getfield opcode */  
    7.   
    8.     while (++i < len) {  
    9.     if (val[off + i] == oldChar) {  
    10.         break;  
    11.     }  
    12.     }  
    13.     if (i < len) {  
    14.     char buf[] = new char[len];  
    15.     for (int j = 0 ; j < i ; j++) {  
    16.         buf[j] = val[off+j];  
    17.     }  
    18.     while (i < len) {  
    19.         char c = val[off + i];  
    20.         buf[i] = (c == oldChar) ? newChar : c;  
    21.         i++;  
    22.     }  
    23.     return new String(0, len, buf);  
    24.     }  
    25. }  
    26. return this;  
    27.    }  
    展开全文
  • 1)replace的参数是char和CharSequence,即可以支持字符替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也就是字符串); 2)replaceAll的参数是regex,即基于规则表达式的替换,比如,可以通过...
  • 最近在处理一些字符串的替换中发生的一些问题。 最近需要临时实现一个再FCK中替换一些字符串的工作。 因此首先想到的的一个方法就是replaceAll();方法。这个简单也很实在。 故第一次实现的伪代码段位: [code=&...
  • java中用指定的字符替换指定的字符串 [code="java"]public class StringReplacer { private String str; public StringReplacer(String src, String before, String after) { str = ...
  • 主要介绍了java字符替换排序实例,有需要的朋友可以参考一下
  • java 字符替换效率

    千次阅读 2017-06-14 00:02:31
    java 字符替换效率
  • 1:如果字符串长度足够,要去保留前后五个字符,其他字符替换为***** 2:如果长度不够,保留的字符有所减少,其他字符替换为** 实现 1、使用replaceAll方法 public static void main(String[] args) { Scanner scanner=...
  • Java字符替换

    2017-06-11 11:43:57
    replace()方法可实现将指定的字符串或字符替换成新的字符或字符串。 语法:str.replace(char oldChar,char newChar) //oldChar :要替换的字符或字符串 ;newChar:用于替换原来字符串的内容 replace()方法返回的结果...
  • java字符替换

    2015-12-23 09:54:52
    之前认为java字符替换replace或replaceAll就可以替换所有字符串了,后来发现不是这样。 项目中需要把\r\n替换为时,上面的方式就不起作用了,至于为什么不太清楚。 后来找到一种方式就可以了,代码如下: ...
  • Java 字符替换

    2019-09-15 19:04:22
    该方法的作用是替换字符串中所有指定的字符,然后生成一个新的字符串。经过该方法调用以后,原来的字符串不发生改变。例如: String s = “abcat”; String s1 = s.replace(‘b’,...
  • 现在使用 Java 中的字符串替换方法对它进行批量修改和纠正,其中就用到了我们在《Java字符串的替换》一节中学到的 String 类的 replace() 方法、replaceFirst() 方法和 replaceAll() 方法。 本篇文章由泉州SEOwww....
  • 0,1,2,3 --> 0-1,2-3 java 有什么方法可以转?
  • JAVA字符替换

    2012-12-19 16:54:22
     * 字符替换函数  * @param from 要替换字符  * @param to 要替换成的目标字符  * @param source 要替换字符串  * @return 替换后的字符串  */  import java.util.StringTokenizer;  public ...
  • Java字符替换功能

    千次阅读 2019-04-09 11:00:31
    (1):替换字符串中${name} 类似的字符串 比如: import java.io.IOException; import java.io.StringReader; import java.io.StringWriter; import java.util.Map; import org.springframework.core.io....
  • Java字符替换方法用于用其他一些字符串替换部分字符串。这些字符串替换方法有时非常有用。例如,将文件中所有出现的“颜色”替换为“颜色”。 Java字符替换 Java String类具有四种替换子字符串的方法。...
  • 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 拿到题觉得这不是小儿科嘛 然后发现还是得写几行代码,一个函数 解决不了...
  • Java 字符串 之 字符替换

    万次阅读 2018-06-04 09:44:36
    4. 字符串的替换操作 ... String replace(char oldChar,char newChar) //将新字符替换旧字符 3. String replaceFirst(String regex,String replacement); //替换第一个满足条件的字符串 */ pub...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,745
精华内容 3,098
关键字:

java字符替换

java 订阅