我可以改变我的字符串吗?

Ruc*_*nia 1 java arrays string android arraylist

ArrayList在表单中填充了字符串:

Name - (###)###-####
or
Name - ##########
Run Code Online (Sandbox Code Playgroud)

我想把它留在没有名字或连字符的形式:

##########
Run Code Online (Sandbox Code Playgroud)

我做了以下事情:

for (String number : contactArrayList) {
    number = number.replace("(", "");
    number = number.replace(")", "");
    number = number.replace(" ", "");
    number = number.replace ("+", "");
    number = number.replaceAll("\\D+", ""); //Remove non numeric values

    sendMessage(number, "SMS")
}
Run Code Online (Sandbox Code Playgroud)

sendSMS 方法:

private void sendSMS(String number, String message) {
    SmsManager sms = SmsManager.getDefault();
    sms.sendTextMessage(number, null, message, null, null);
}
Run Code Online (Sandbox Code Playgroud)

但这创建了我的字符串的实例number,5次(我知道因为发送到该号码的任何消息被发送5次).有没有办法可以将所有这些替换语句组合起来?

谢谢,

Ruchir

Far*_*raz 5

这很简单.它将替换所有非数字值:

for (String number : contactArrayList) {
    number = number.replaceAll("[^0-9]", ""); //Remove non numeric values
}
Run Code Online (Sandbox Code Playgroud)