Preciso separar e somar os números de uma string, a parte de separar foi moleza usando expressões regulares, encontrei como fazer, mas não consigo somar os números que achei. Para melhor exemplificar, a string seria algo como “123abc123” e a saída (ou resultado) deveria ser “246” e não “123123” como está acontecendo.
Abaixo, fiz o código que separa números de letras mas não consigo somar o resultado dos números.
AGRADEÇO ANTECIPADAMENTE A AJUDA DOS HABILIDOSOS COLEGAS
Segue o pequeno código:
public class QuestaoCinco {
public static void main(String[] args) {
String dado = "123abc123";
String dadoNumeros = dado.replaceAll("\\D*", "");
String dadoLetras = dado.replaceAll("\\d*", "");
System.out.println(dadoNumeros);
System.out.println(dadoLetras);
//a saída está
//123123
//abc
//mas eu preciso que seja 246
}
}
Tu não separaste as letras dos números mas simplesmente retiraste todas as letras. Quando chegas ao teu valor 123123, não sabes sequer se isso era “123 123”, “12 31 12” ou “123123” ou qualquer uma das outras combinações possíveis.
pmlm, valeu mesmo pela dica.
preciso que a saída seja a soma dos números listados
Tentei o dia todo hoje somar esses números do mach.group() e não consegui nada…
Como eu poderia somar este array?
Se não for abusar, vc ou algum outro colega pode me ajudar?