有一个简单的方法来删除子字符串从给定的字符串在Java?

例如:“Hello World!”,去掉“o”→“Hell Wrld!”


当前回答

replaceAll(String regex, String replacement)

以上方法将帮助你得到答案。

String check = "Hello World";
check = check.replaceAll("o","");

其他回答

你可以使用

String helloWorld = "Hello World";
String target = "e";
String replacement = "";
String replacedString = helloWorld.replace(target, replacement);

The answer is = Hllo World

或者你可以使用正则表达式

String original = "Java is one of best languages. OOP can be used in Java";
String regexTarget = "\\bJava\\b";
String replacedWord = original.replaceAll(regexTarget, "Python");

The answer is = Python is one of best languages. OOP can be used in Python

你也可以使用番石榴的CharMatcher。removeFrom函数。

例子:

 String s = CharMatcher.is('a').removeFrom("bazaar");
private static void replaceChar() {
    String str = "hello world";
    final String[] res = Arrays.stream(str.split(""))
            .filter(s -> !s.equalsIgnoreCase("o"))
            .toArray(String[]::new);
    System.out.println(String.join("", res));
}

如果你有一些复杂的逻辑来过滤字符,那就用另一种方法代替replace()。

replaceAll(String regex, String replacement)

以上方法将帮助你得到答案。

String check = "Hello World";
check = check.replaceAll("o","");

你应该看看StringBuilder/StringBuffer,它允许你删除,插入,替换指定偏移量的字符。