如何使用replace(char,char(将字符"b"的所有实例替换为空。
例如:
Hambbburger to Hamurger
EDIT:Constraint只是JDK 1.4.2,意味着没有重载版本的replace!
还有一个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("."),"");
字符串是不可变的,因此请确保将结果分配给字符串。
String str = "Hambbburger";
str = str.replace("b", "");
如果使用Java 6,则不需要replaceAll。请参阅此处:替换
试试这个代码。。。。
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);
}
}
输出
汉堡。我想吃汉堡---------更换后-----汉堡。我想吃汉堡。
String text = "Hambbburger";
text = text.replace('b', ' ');
' '
表示ASCII码中的NUL。
replaceAll
无法正常工作。建议使用replace()
示例:-
String s="abcdefabcdef";
s=s.replace("a","");
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));
}