How to replace all characters in a Java string with stars

前端 未结 9 1950
不思量自难忘°
不思量自难忘° 2020-12-01 07:32

I want to replace all the characters in a Java String with * character. So it shouldn\'t matter what character it is, it should be replaced with a *

9条回答
  •  隐瞒了意图╮
    2020-12-01 08:21

    Java 11 and later

    str = "*".repeat(str.length());
    

    Note: This replaces newlines \n with *. If you want to preserve \n, see solution below.

    Java 10 and earlier

    str = str.replaceAll(".", "*");
    

    This preserves newlines.

    To replace newlines with * as well in Java 10 and earlier, you can use:

    str = str.replaceAll("(?s).", "*");
    

    The (?s) doesn't match anything but activates DOTALL mode which makes . also match \n.

提交回复
热议问题