Mehran:
Tengo problemas para conseguir carbón de cadena. 6x3 + 5 + 10x2 , tengo esto como cuerda y quiero obtener el número después de x ^ . ¿Cómo puedo hacer esto sin usar si y para? ¿Hay algún método y expresiones regulares que me puede ayudar?
Arvind Kumar Avinash:
Hacerlo de la siguiente manera:
import java.util.Arrays;
import java.util.regex.MatchResult;
import java.util.regex.Pattern;
public class Main {
public static void main(String args[]) {
String exp = "6x^3 + 5 + 10x^2";
String[] nums = Pattern.compile("(?<=x\\^)[0-9]+").matcher(exp).results().map(MatchResult::group)
.toArray(String[]::new);
System.out.println(Arrays.toString(nums));
}
}
Salida:
[3, 2]
Nota: Matcher :: resultados están disponibles sólo a partir de Java 9.