Tengo una cadena como esta: "LODIXAL COMP 15"cómo dividir una cadena contiene números en java?
¿Cómo puedo dividirla en "LODIXAL COMP" y "15"?
String a = "LODIXAL COMP 15";
String[] result = {"LODIXAL COMP" , "15"}
Tengo una cadena como esta: "LODIXAL COMP 15"cómo dividir una cadena contiene números en java?
¿Cómo puedo dividirla en "LODIXAL COMP" y "15"?
String a = "LODIXAL COMP 15";
String[] result = {"LODIXAL COMP" , "15"}
Utilice esta expresión regular positive lookahead basadas:
a.split(" (?=\\d+)");
PRUEBA:
System.out.println(Arrays.toString(a.split(" (?=\\d+)")));
SALIDA:
[LODIXAL COMP, 15]
con Cadena a = "LODIXAL 12 3 COMP 15"; Salida: [LODIXAL, 12, 3 COMP, 15] – smas
@smas Sí, esta expresión regular no funcionará con su cadena, necesitará 'a.split (" (? = \\ d + $) ")' para eso. Puedo editar la respuesta, pero no sabemos si OP puede tener cadenas así en su código. – anubhava
hay otra situación como esta: String a = "ACEDICON COMP 1 X 5 MG" y debería dividirse en "ACEDICON COMP 1" y "X 5 MG". ¿Cómo puedo hacerlo? – michdraft
Lea [this] (http://docs.oracle.com/javase/tutorial/essential/regex/) – mre
¿Cuál es el criterio exacto para la ubicación de la división? ¿Puede la primera cadena devuelta alguna vez contener dígitos? – NPE
respondiendo a la pregunta de @ aix ayudará a crear una buena respuesta para usted. Lo que quiere obtener: AAA BBB 2 3 CCC 4? [AAA BBB, 2, 3, CCC, 4]? – smas