es ist posible determinar la función ("(") que tiene que dividir sólo por la primera cadena encontrada String.split "("Dividir por primera cuerda encontró en Java
Ejemplo:?
String test = "A*B(A+B)+A*(A+B)";
test.split("(") should result to ["A*B" ,"A+B)+A*(A+B)"]
test.split(")") should result to ["A*B(A+B" ,"+A*(A+B)"]
ruakh Probé su respuesta, cuando mis reges es " \\ (", funciona bien pero cuando mi expresión regular es" (", arroja Excepción. ¿Puedes decir por qué? –
@ChandraSekhar: Es porque' ('tiene un significado especial en las expresiones regulares de Java. (Por ejemplo,' 34) + 'significa" una o más apariciones de '34'", en oposición a '34 +' que significa "a' 3', seguido por uno o más ocurrencias de '4'.) Entonces la barra diagonal inversa se usa para" citar "o" escapar ", e indicar" un 'real" ("carácter" en lugar de usar '(' para su significado especial. – ruakh
@ruakh gracias por su respuesta. –