106

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"?

1
  • 2
    So you want only the last word? Commented Mar 7, 2011 at 5:48

7 Answers 7

155

The replace method is what you're looking for.

For example:

String replacedString = someString.replace("HelloBrother", "Brother");
Sign up to request clarification or add additional context in comments.

Comments

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!"

1 Comment

Almost -1 for giving out a link to an ancient copy of the javadocs.
11

There is a possibility not to use extra variables

String s = "HelloSuresh";
s = s.replace("Hello","");
System.out.println(s);

2 Comments

It's hardly a new answer, but an improvement of @DeadProgrammer's answer.
This is existing answer please try with different approach @oleg sh
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

Comments

6
     String s1 = "HelloSuresh";
     String m = s1.replace("Hello","");
     System.out.println(m);

Comments

1

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.

Comments

0

You can use replace method to achieve this:

String outputString1 = inputString.replace("HelloBrother", "Brother");
String outputString2 = inputString.replace("JAVAISBEST", "BEST");

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.