Java Spliting Strings
El método Split () de Java.lang.String, JDK 1.4 o posterior
Public String [] Split (String Regex, Int Limit)
Código de muestra
Public Class Stringsplit {public static void main (String [] args) {String SourCestr = "1,2,3,4,5"; String [] SourCestray = SourCest.split (","); for (int i = 0; i <SourCestray.length; i ++) {System.out.println (SourCestRaRray [i]); } // dividido hasta 3 cadenas int maxsplit = 3; SourCestray = SourCest.split (",", maxsplit); for (int i = 0; i <SourCestray.length; i ++) {System.out.println (SourCestRaRray [i]); }}}Resultado de salida:
12345123,4,5
La implementación dividida llama directamente al método dividido de la clase Matcher . Al usar el método String.Split para delimitar cadenas, si el delimitador usa algunos caracteres especiales, es posible que no obtenga los resultados que esperábamos. Los personajes con significados especiales en expresiones regulares deben escaparse cuando los usamos. Ejemplo:
Public Class Stringsplit {public static void main (string [] args) {String value = "192.168.128.33"; // Tenga en cuenta que debe agregar //, o no salga, sí, string [] names = value.split ("//."); for (int i = 0; i <names.length; i ++) {system.out.println (nombres [i]); }}}Resumen del separador dividido
1. Los caracteres "|", "*", "+" deben agregarse con personajes escapados, y se agrega ante ellos "//".
2. Si es "/", entonces debe escribirse como "////".
3. Si hay varios delimitadores en una cadena, puede usar "|" como un guión.
Por ejemplo: String Str = "Java String-Split#test", puede usar str.split ("|-|#") para separar cada cadena. Esto divide la cadena en 3 sustros.
java.util.tokenizer jdk 1.0 o posterior
StringTokenizer
La clase StringTokenizer permite que las aplicaciones descompongan las cadenas en tokens. StringTokenizer es una clase heredada que se conserva por razones de compatibilidad (aunque no se fomenta en un nuevo código). Se recomienda que todos aquellos que buscan esta función usan el método dividido de String o el paquete java.util.regex.
Ejemplo de código
Public Class Stringsplit {public static void main (String [] args) {String ip = "192.168.128.33"; StringTokenizer token = new StringTokenizer (ip, "."); while (token.hasmoreelements ()) {system.out.print (token.nextToken ()+""); }}}Sin embargo, para la división de la cadena "192.168..33", la matriz de cuerdas devuelta tiene solo 3 elementos, y se ignorará la cadena vacía entre los dos separadores. Esto debe usarse con precaución.
Sin embargo, String.split (String.split se combina con expresiones regulares, por lo que no utiliza el algoritmo de coincidencia de cadena KMP) usa algoritmos que atraviesan en secuencia, con una complejidad de alto tiempo de O (M*N), por lo que en términos de rendimiento, StringTocedOwerer es mucho mejor. Para las aplicaciones que usan con frecuencia la segmentación de cadenas, como el procesamiento de datos ETL, el rendimiento del uso de StringTokenizer puede mejorarse mucho.
Gracias por leer, espero que pueda ayudarte. ¡Gracias por su apoyo para este sitio!