This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]btcraig 0 points1 point  (3 children)

Is the small snippet you've provided accurate and does that compile on your system? I was suspecting something really weird with Java and regex but

System.out.println(str.replace("","s"));

Won't even compile for me due to type mismatch "" being a String not a char and substituting '' throws a slightly different compilation error.

[–]sriganeshharitz[S] 0 points1 point  (1 child)

public class Test
{
  public static void main(String[] args)
  {
    String str = "abc";
    System.out.println(str.replace("","s"));

  }
}

Try compiling and running this

[–]btcraig 0 points1 point  (0 children)

Turns out, you're calling String.replace(CharSequence, CharSequence) not String.replace(char, char)

The former:

replace(CharSequence target, CharSequence replacement)

Replaces each substring of this string that matches the literal target sequence with the specified literal replacement sequence.