Java spaltet Saiten
Die Split () -Methode von Java.lang.String, JDK 1.4 oder höher
public String [] split (String regex, int limit)
Beispielcode
public class stringsplit {public static void main (String [] args) {String sourcestr = "1,2,3,4,5"; String [] Sourcestrarray = Sourcestr.split (","); für (int i = 0; i <Sourcestrarray.length; i ++) {System.out.println (Sourcestrarray [i]); } // Teilen Sie bis zu 3 Zeichenfolgen int maxSplit = 3; SourCestrarray = Sourcestr.Ssplit (",", maxSplit); für (int i = 0; i <Sourcestrarray.length; i ++) {System.out.println (Sourcestrarray [i]); }}}Ausgangsergebnis:
12345123,4,5
Die Split -Implementierung ruft direkt die Split -Methode der Matcher -Klasse auf . Bei Verwendung der String.split -Methode zum Abgrenzungszeichenfolgen wird möglicherweise nicht die erwarteten Ergebnisse erhalten, wenn der Trenngeber einige Sonderzeichen verwendet. Charaktere mit besonderen Bedeutungen in regulären Ausdrücken müssen entkommen, wenn wir sie verwenden. Beispiel:
public class stringsplit {public static void main (String [] args) {String value = "192.168.128.33"; // Beachten Sie, dass Sie hinzufügen sollten //, entweder nicht herauskommen, yeah string [] names = value.split ("//"); für (int i = 0; i <names.length; i ++) {System.out.println (Namen [i]); }}}Zusammenfassung des Split -Separators
1. Die Zeichen "|", "*", "+" müssen mit entkommenen Zeichen hinzugefügt werden, und "//" wird vor ihnen hinzugefügt.
2. Wenn es "/" ist, muss es als "////" geschrieben werden.
3. Wenn in einer Zeichenfolge mehrere Grenzwerte enthalten sind, können Sie "|" verwenden. als Bindestrich.
Zum Beispiel: String str = "Java String-split#test" können Sie Str.Split ("|-|#") verwenden, um jede Zeichenfolge zu trennen. Dies unterteilt die Zeichenfolge in 3 Substrings.
java.util.tokenizer jdk 1.0 oder später
StringTokenizer
Mit der StringTokenizer -Klasse können Anwendungen Strings in Token zerlegen. StringTokenizer ist eine Legacy -Klasse, die aus Kompatibilitätsgründen erhalten bleibt (obwohl sie in neuem Code nicht gefördert wird). Es wird empfohlen, dass alle, die diese Funktion suchen, die Split -Methode von String oder das Java.util.regex -Paket verwenden.
Codebeispiel
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 ()+""); }}}Für die Aufteilung der Zeichenfolge "192.168..33" hat das zurückgegebene String -Array jedoch nur 3 Elemente, und die leere Zeichenfolge zwischen den beiden Separatoren wird ignoriert. Dies sollte mit Vorsicht verwendet werden.
String.split (String.Split ist jedoch mit regulären Ausdrücken übereinstimmt, sodass der KMP -String -Matching -Algorithmus nicht verwendet wird) Algorithmen verwendet, die nacheinander durchlaufen, mit einer hohen Zeitkomplexität von O (M*n). Bei Anwendungen, die häufig die String -Segmentierung verwenden, wie z. B. ETL -Datenverarbeitung, kann die Leistung der Verwendung von StringOkaizer erheblich verbessert werden.
Danke fürs Lesen, ich hoffe, es kann Ihnen helfen. Vielen Dank für Ihre Unterstützung für diese Seite!