我可以用这个:
String str = "TextX Xto modifyX";
str = str.replace('X','');//that does not work because there is no such character ''
是否有一种方法来删除字符X的所有出现从一个字符串在Java?
我尝试了这个,不是我想要的:str.replace('X',' ');//替换为空格
我可以用这个:
String str = "TextX Xto modifyX";
str = str.replace('X','');//that does not work because there is no such character ''
是否有一种方法来删除字符X的所有出现从一个字符串在Java?
我尝试了这个,不是我想要的:str.replace('X',' ');//替换为空格
当前回答
尝试使用重载来接受CharSequence参数(例如,String)而不是char:
str = str.replace("X", "");
其他回答
使用
public String replaceAll(String regex, String replacement)
将工作。
使用str.replace("X", "");
执行
"Xlakjsdf Xxx".replaceAll("X", "");
返回:
lakjsdf xx
尝试使用重载来接受CharSequence参数(例如,String)而不是char:
str = str.replace("X", "");
你好试试下面的代码
public class RemoveCharacter {
public static void main(String[] args){
String str = "MXy nameX iXs farXazX";
char x = 'X';
System.out.println(removeChr(str,x));
}
public static String removeChr(String str, char x){
StringBuilder strBuilder = new StringBuilder();
char[] rmString = str.toCharArray();
for(int i=0; i<rmString.length; i++){
if(rmString[i] == x){
} else {
strBuilder.append(rmString[i]);
}
}
return strBuilder.toString();
}
}
我喜欢在这种情况下使用RegEx:
str = str.replace(/X/g, '');
g是全局的,所以它会遍历你的整个字符串,把所有X替换为"; 如果你想同时替换X和X,你可以简单地说:
str = str.replace(/X|x/g, '');
(看我的小提琴在这里:小提琴)
使用replaceAll代替replace
str = str.replaceAll("X,"");
这应该会给你想要的答案。