Monday 13 May 2013

Java String Replace Example Tutorial

This String replace example in Java will show you how to replace String in Java both at character level and by using regular expression. Since String is final in Java every time you replace String you will get a new String object only if your actually replace anything on original String otherwise replace methods of String return same String object. String Class in Java provides 4 methods to replace String in Java. Those methods allow you to replace character from String, replace CharacterSequence from String, replace all occurrence of pattern in String or just first occurrence of any pattern in Java. We will also see important points on String replace method and how to make best use of regular expression while replace string in Java.

This article is on series of my other String article like 2 ways to Split String in Java and how to convert String to Date in Java. String is one of the most important classes in Java and having a good knowledge of String class is mandatory for any Java developer.


Java String Replace Example and Tutorial in Java


Java String replace example tutorialString Replace Examples in Java

As I said earlier Java provides at-least four methods to replace String in Java according to JDK 1.6 documentation.
1. Replace method to replace single character in String
replace(char oldChar, char newChar)
This replace method in String takes one character and replaces all of its occurrence in provided
String with new character provided to it. Here is an String replace Example of changing character

String replaceSample = "This String replace Example shows how to replace one char from String";
String newString = replaceSample.replace('r', 't');
Output: This Stting teplace Example shows how to teplace one chat ftom Stting

You can see all occurrence of "r" has been replaced by "t".
1. This replace method of String will return a new String object if there is a replace.
2. It will return same String objects if there is no matching char and there is no replace.
3. Replacement of String is Case Sensitive, so replacing "c" will only replace small case not Capital Case.
2. Replace method to replace character sequence in String
replace(CharSequence target, CharSequence replacement)
This String replace method replaces one character sequence with other. This method has added from JDK 1.5 onwards. Here is a String replace example of replacing character sequence form String

String replaceSample = "String replace Example of replacing Character Sequence";
String newString = replaceSample.replace("re", "RE");
Output: String REplace Example of REplacing Character Sequence

In this String replace Example, we have replaced "re" with "RE".
1) This String replace method will throw NullPointerException if either oldCharSequence or newCharSequence is null.
2) Replacement of String starts from beginning and proceed towards end. So in a String "ccc" replacing "cc" with "d" will result in "dc" rather than "cd".
3. Replace method to replace all matched pattern in String
replaceAll(String regex, String replacement)

Good thing about replace method of String Class in Java is that it supports regular expression. With regex capability you can perform sophisticated Search on String and than replace characters. This String replace method replaces each matched substring with the replacement String provided. Let's see String replace example with regular expression:

String replaceSample = "String replace Example with regular expression";
String newString = replaceSample.replaceAll("^S","R");
Output: Rtring replace Example with regular expression

This String replace replaces any "S" wiht "R" if it comes at beginning of line "^" denotes beginning of line you can also apply pattern matching wildcards and charset while replacing String in Java.
1. This String replace method will throw PatternSyntaxException in case regular expression's syntax is not valid.
4. Replace method to replace first matched pattern in String
replaceFirst(String regex, String replacement)
This String replace method is similar to above method but it only replaces first occurrence of matching pattern instead of all occurrence. Very handy some time. Here is an example of String replace with replaceFirst() method.

String replaceSample = "String replace Example with replaceFirst";
String newString = replaceSample.replaceFirst("re","RE");
Output: String REplace Example with replaceFirst

You can see only first occurrence of "re" is replaced with "RE" while second occurrence remains same
That’s all on how to replace String in Java, search and replace is one of the most needed thing in String and having an idea of right way of doing it is good. These String replace examples are rather simple but you can make more sophisticated by using regular expression.

How to Convert Date to String in Java

How to Convert Sting to double in Java

How to override CompareTo in Java

How to override Equals in java

How to implement Thread in Java

Spring Interview questions in java

JSP Interview questions in java

Please share with your friends if like this article

No comments:

Post a Comment