105

What function can replace a string with another string?

Example #1: What will replace "HelloBrother" with "Brother"?

Example #2: What will replace "JAVAISBEST" with "BEST"?

Oliver Spryn
  • 16,146
  • 33
  • 97
  • 186
Shah
  • 4,910
  • 10
  • 46
  • 70

7 Answers7

155

The replace method is what you're looking for.

For example:

String replacedString = someString.replace("HelloBrother", "Brother");
Daniel Olszewski
  • 13,071
  • 5
  • 55
  • 62
pwc
  • 6,943
  • 3
  • 28
  • 32
49

Try this: https://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html#replace%28java.lang.CharSequence,%20java.lang.CharSequence%29

String a = "HelloBrother How are you!";
String r = a.replace("HelloBrother","Brother");

System.out.println(r);

This would print out "Brother How are you!"

ProNeticas
  • 976
  • 3
  • 10
  • 17
11

There is a possibility not to use extra variables

String s = "HelloSuresh";
s = s.replace("Hello","");
System.out.println(s);
Oleg SH
  • 394
  • 4
  • 10
8

Replacing one string with another can be done in the below methods

Method 1: Using String replaceAll

 String myInput = "HelloBrother";
 String myOutput = myInput.replaceAll("HelloBrother", "Brother"); // Replace hellobrother with brother
 ---OR---
 String myOutput = myInput.replaceAll("Hello", ""); // Replace hello with empty
 System.out.println("My Output is : " +myOutput);       

Method 2: Using Pattern.compile

 import java.util.regex.Pattern;
 String myInput = "JAVAISBEST";
 String myOutputWithRegEX = Pattern.compile("JAVAISBEST").matcher(myInput).replaceAll("BEST");
 ---OR -----
 String myOutputWithRegEX = Pattern.compile("JAVAIS").matcher(myInput).replaceAll("");
 System.out.println("My Output is : " +myOutputWithRegEX);           

Method 3: Using Apache Commons as defined in the link below:

http://commons.apache.org/proper/commons-lang/javadocs/api-z.1/org/apache/commons/lang3/StringUtils.html#replace(java.lang.String, java.lang.String, java.lang.String)

REFERENCE

Community
  • 1
  • 1
Nishanthi Grashia
  • 9,787
  • 5
  • 42
  • 57
6
     String s1 = "HelloSuresh";
     String m = s1.replace("Hello","");
     System.out.println(m);
Dead Programmer
  • 12,207
  • 20
  • 77
  • 111
0

Another suggestion, Let's say you have two same words in the String

String s1 = "who is my brother, who is your brother"; // I don't mind the meaning of the sentence.

replace function will change every string is given in the first parameter to the second parameter

System.out.println(s1.replace("brother", "sister")); // who is my sister, who is your sister

and you can use also replaceAll method for the same result

System.out.println(s1.replace("brother", "sister")); // who is my sister, who is your sister

if you want to change just the first string which is positioned earlier,

System.out.println(s1.replaceFirst("brother", "sister")); // whos is my sister, who is your brother.
User8500049
  • 400
  • 2
  • 10
0

You can use replace method to achieve this:

String outputString1 = inputString.replace("HelloBrother", "Brother");
String outputString2 = inputString.replace("JAVAISBEST", "BEST");
Aman Kumayu
  • 321
  • 1
  • 9