Estoy buscando una forma de extraer los últimos caracteres de una cadena, independientemente del tamaño. Tomemos estas cadenas como ejemplo:
"abcd: efg: 1006746"
"bhddy: nshhf36: 1006754"
"hfquv: nd: 5894254"
Como puede ver, cadenas completamente aleatorias, pero tienen 7 números al final. ¿Cómo podría tomar esos 7 números?
Editar:
Me acabo de dar cuenta de que String[] string = s.split(": ");funcionaría muy bien aquí, siempre y cuando llame a la cadena [2] para los números y la cadena [1] para cualquier cosa en el medio.
String.split(), pero vale la pena señalar ques.split(": ")compilará una nuevajava.uitl.regex.Patterncada vez que la llame, luego hará coincidir su cadena con ese patrón, creando una expresión regularMatchery unaArrayListantes de laString[]que se devuelve. Será relativamente lento y destinará mucho más de lo necesario para resolver este problema. Si esto es importante depende de la naturaleza de su aplicación. Generalmente evito asplit()menos que realmente lo necesite. (Tenga en cuenta quesplit()no no utilizar expresiones regulares si se divide en un solo carácter.)