Replacing characters in Java

前端 未结 6 1184
囚心锁ツ
囚心锁ツ 2021-01-25 16:05

I tried to replace characters in String which works sometimes and does not work most of the time.

I tried the following:

String t = \"[javatag]\";
String         


        
相关标签:
6条回答
  • 2021-01-25 16:39
    t.replace(....);
    

    gives you a String (return a string)

    you can reassign the origin variable name to the new string

    and the old string will later been garbage-collected :)

    0 讨论(0)
  • 2021-01-25 16:40

    Strings in Java are immutable, meaning you can't change them. Instead, do t1 = t1.replace("]", "");. This will assign the result of replace to t1.

    0 讨论(0)
  • 2021-01-25 16:44

    String.replace() returns a new string after replacing the required characters. Hence you need to do it in this way:

    String t = "[javatag]";
    t = t.replace("[","");
    t = t.replace("]","");
    
    0 讨论(0)
  • 2021-01-25 16:50

    Strings are immutable so

    t.replace(....);
    

    does nothing

    you need to assign the output to some variable like

    t = t.replace(....);
    
    0 讨论(0)
  • 2021-01-25 16:52

    String objects in java are immutable. You can't change them.

    You need:

    t2 = t2.replace("\\]", "");
    

    replace() returns a new String object.

    Edit: Because ... I'm breaking away from the pack

    And since this is the case, the argument is actually a regex, and you want to get rid of both brackets, you can use replaceAll() instead of two operations:

    t2 = t2.replaceAll("[\\[\\]]", "");
    

    This would get rid of both opening and closing brackets in one fell swoop.

    0 讨论(0)
  • 2021-01-25 16:54

    String.replace doesn't work that way. You have to use something like t = t.replace("t", "")

    0 讨论(0)
提交回复
热议问题