如何使用replace(char,char)来替换所有字符b的实例

时间:2011-08-10 15:38:12

标签: java replace

如何使用replace(char, char)替换所有字符“b”的实例。

例如:

Hambbburger to Hamurger

编辑:有一个约束,我可能只使用1.4.2,这意味着没有重载的重载版本!

6 个答案:

答案 0 :(得分:18)

还有一个使用字符串的replaceAll函数,但请注意它会将它们作为正则表达式进行删除,但是替换单个字符串就可以了。

以下是一个例子:

String meal = "Hambbburger";

String replaced = meal.replaceAll("b","");

请注意,replaced变量是必需的,因为replaceAll不会更改字符串,但会创建一个带有替换的新字符串(String在java中是不可变的)。

如果要替换的字符在正则表达式中具有不同的含义(例如.字符将匹配任何字符,而不是点数),您需要quote这样的第一个参数:

String meal = "Ham.bur.ger";

String replaced = meal.replaceAll(Pattern.quote("."),"");

答案 1 :(得分:6)

字符串是不可变的,因此请确保将结果分配给字符串。

String str = "Hambbburger";
str = str.replace("b", "");

如果您使用Java 6,则不需要replaceAll。请参阅此处:replace

答案 2 :(得分:3)

试试这个代码......

public class main {
public static void main(String args[]){
    String g="Hambbburger.i want to eat Hambbburger. ";
    System.out.print(g);
    g=g.replaceAll("b", "");



      System.out.print("---------After Replacement-----\n");
      System.out.print(g);

}
}

<强>输出

Hambbburger.i想吃Hambbburger。 ---------更换后----- Hamurger.i想吃Hamurger。

答案 3 :(得分:1)

String text = "Hambbburger";
text = text.replace('b', '\0');

'\0'代表ASCII代码中的NUL。

答案 4 :(得分:0)

String中的

replaceAll无效。总是建议使用replace()

<强>例如: -

String s="abcdefabcdef";
s=s.replace("a","");

答案 5 :(得分:0)

    String str="aabbcc";
    int n=str.length();
    char ch[]=str.toCharArray();

    for(int i=0;i<n-1;i++)
    {
        for(int j=i+1;j<n;j++)
        {
            if(ch[i]==ch[j])
            {
               ch[j]='*';
            }
        }
    }
    String temp=new String(ch);

    for(int i=0;i<temp.length();i++)
    {
        if(temp.charAt(i)!='*')
        System.out.print(temp.charAt(i));
    }