我可以用这个:

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 text = "removing a special character from a string";

int delete = 'e';
int[] arr = text.codePoints().filter( c -> c != delete ).toArray();

String rslt = new String( arr, 0, arr.length );

给出:从字符串中删除一个特殊字符

其他回答

使用

public String replaceAll(String regex, String replacement)

将工作。

使用str.replace("X", "");

执行

"Xlakjsdf Xxx".replaceAll("X", "");

返回:

lakjsdf xx

尝试使用重载来接受CharSequence参数(例如,String)而不是char:

str = str.replace("X", "");

如果你想用Java字符串做一些事情,Commons Lang StringUtils是一个很好的地方。

StringUtils.remove("TextX Xto modifyX", 'X');

…另一个λ 从原始字符串中复制一个新字符串,但省略要删除的字符

String text = "removing a special character from a string";

int delete = 'e';
int[] arr = text.codePoints().filter( c -> c != delete ).toArray();

String rslt = new String( arr, 0, arr.length );

给出:从字符串中删除一个特殊字符

你可以使用str = str.replace("X", "");如前所述,你会没事的。“”不是空字符(或有效字符),而“\0”是。

所以你可以使用str = str.replace('X', '\0');代替。