如何替换字符串的某些字符

Nou*_*hah -6 java android android-fragments

我有一个数字字符串,我想将字符串的前三个字符更改为另一个字符

假设我有一个像0333XXXXXXXand的字符串 +38333XXXXXXX。如果字符串的第一个字符是+38我想用“0”替换它,而其余的字符串保持不变这是我的代码

        private String modifyNumber(String num) {
                if (num.startsWith("+38")) {
                    num.replaceFirst("+38", "0");}
                   return num;}
Run Code Online (Sandbox Code Playgroud)

“+38”在num.replaceFirst.

Sec*_*der 6

您可以使用字符串替换方法。见下文

String number = +9231235410;
String newNumber = number.replace("+92","0");
Run Code Online (Sandbox Code Playgroud)

编辑:

这是基于您的代码

 private String modifyNumber(String num) {
            if (num.startsWith("+92")) {
                num = num.replaceFirst("\\+(92)", "0");}
            return num;}
Run Code Online (Sandbox Code Playgroud)

笔记:

  • 在java中,你需要有双反斜杠,因为它\是一个独特的java字符。
  • Java 字符串是不可变的方法。您需要将其分配给一个变量才能获得结果。num = num.replaceFirst("\\+(\\d{2})", "0")