user2664856
user2664856

Reputation: 630

Insert a space after every given character - java

I need to insert a space after every given character in a string.

For example "abc.def..."

Needs to become "abc. def. . . "

So in this case the given character is the dot.

My search on google brought no answer to that question

I really should go and get some serious regex knowledge.

EDIT : ----------------------------------------------------------

String test = "0:;1:;";
test.replaceAll( "\\:", ": " );
System.out.println(test);

// output: 0:;1:;
// so didnt do anything

SOLUTION: -------------------------------------------------------

String test = "0:;1:;";
**test =** test.replaceAll( "\\:", ": " );
System.out.println(test);

Upvotes: 0

Views: 1248

Answers (3)

tangens
tangens

Reputation: 39733

You could use String.replaceAll():

String input = "abc.def...";
String result = input.replaceAll( "\\.", ". " );
// result will be "abc. def. . . "

Edit:

String test = "0:;1:;";
result = test.replaceAll( ":", ": " );
// result will be "0: ;1: ;" (test is still unmodified)

Edit:

As said in other answers, String.replace() is all you need for this simple substitution. Only if it's a regular expression (like you said in your question), you have to use String.replaceAll().

Upvotes: 6

dan
dan

Reputation: 91

If you want a simple brute force technique. The following code will do it.

String input = "abc.def...";
StringBuilder output = new StringBuilder();
for(int i = 0; i < input.length; i++){
    char c = input.getCharAt(i);
    output.append(c);
    output.append(" ");
}
return output.toString();

Upvotes: 0

Related Questions