programar programacion metodos manejo libro fundamentos funciones declarar cómo clase caracteres cadenas java string split

programacion - manejo de cadenas en java



dividir cadena solo en primera instancia-java (6)

Quiero dividir una cadena por ''='' charecter. Pero quiero que se divida solo en primera instancia. Cómo puedo hacer eso ? Aquí hay un ejemplo de JavaScript para ''_'' char, pero no funciona para mí dividir la cadena solo en la primera instancia del carácter especificado

Ejemplo:

apple=fruit table price=5

Cuando intento String.split (''=''); da

[apple],[fruit table price],[5]

Pero yo necesito

[apple],[fruit table price=5]

Gracias


Como muchas otras respuestas sugieren el enfoque de límite, esta puede ser otra manera

Puedes usar el método indexOf en String, que devolverá la primera ocupación del personaje dado. Usando ese índice puedes obtener la salida deseada

String target = "apple=fruit table price=5" ; int x= target.indexOf("="); System.out.println(target.substring(x+1));


Prueba este código ...

Esta funcionando.

public class Split { public static void main(String...args) { String a = "%abcdef&Ghijk%xyz"; String b[] = a.split("%", 2); System.out.println("Value = "+b[1]); } }


Sí, puedes, simplemente pasa el parametro entero al método de división

String stSplit = "apple=fruit table price=5" stSplit.split("=", 2);

Aquí hay una referencia de doc java: String # split (java.lang.String, int)


String slpitString [] = stringInToSearch.split ("patrón", 2);


String[] func(String apple){ String[] tmp = new String[2]; for(int i=0;i<apple.length;i++){ if(apple.charAt(i)==''=''){ tmp[0]=apple.substring(0,i); tmp[1]=apple.substring(i+1,apple.length); break; } } return tmp; } //returns string_ARRAY_!

me gusta escribir métodos propios :)


string.split("=", 2);

Como String.split(java.lang.String regex, int limit) explica:

La matriz devuelta por este método contiene cada subcadena de esta cadena que termina con otra subcadena que coincide con la expresión dada o finaliza al final de la cadena. Las subcadenas en la matriz están en el orden en que ocurren en esta cadena. Si la expresión no coincide con ninguna parte de la entrada, la matriz resultante tiene solo un elemento, a saber, esta cadena.

El parámetro de limit controla el número de veces que se aplica el patrón y, por lo tanto, afecta la longitud de la matriz resultante. Si el límite n es mayor que cero, entonces el patrón se aplicará a lo sumo n - 1 veces, la longitud de la matriz no será mayor que n , y la última entrada de la matriz contendrá todas las entradas más allá del último delimitador coincidente.

El string boo:and:foo , por ejemplo, produce los siguientes resultados con estos parámetros:

Regex Limit Result : 2 { "boo", "and:foo" } : 5 { "boo", "and", "foo" } : -2 { "boo", "and", "foo" } o 5 { "b", "", ":and:f", "", "" } o -2 { "b", "", ":and:f", "", "" } o 0 { "b", "", ":and:f" }