Ich möchte das Sonderzeichen "\" aufteilen. Allerdings scheint es nichtWie teilt man die Zeichenfolge in Java durch ?
a.split("\");
oder
a.split("\\");
Ich möchte das Sonderzeichen "\" aufteilen. Allerdings scheint es nichtWie teilt man die Zeichenfolge in Java durch ?
a.split("\");
oder
a.split("\\");
Während Sie die regulären Ausdruck entkommen konnte dieses Problem gelöst, indem auszuarbeiten zu String.split
mit dem etwas überraschend
String str = "a\\b\\c";
str.split("\\\\");
es ist auch möglich, eine Pattern
mit Pattern.LITERAL
zu kompilieren und dann Pattern.split(CharSequence)
verwenden wie
String str = "a\\b\\c";
Pattern p = Pattern.compile("\\", Pattern.LITERAL);
String[] arr = p.split(str);
System.out.println(Arrays.toString(arr));
Welche
gibt[a, b, c]
Dies ist auch eine nette Möglichkeit, es zu tun. Danke für die Antwort –
Danke @ChitKhine für die Bearbeitung - ich änderte die Backticks in doppelte Anführungszeichen. –
wird durch die Verwendung
a.split("\\\\");
Gute Arbeit ... genaue ans .. –
Keine Methode muss mit "\" getrennt werden Verwenden Sie einfach "\ n", wo Sie brauchen.
String s = "Thir is a Tiger.\'I like it very nuch!\'I it a pet!";
String s2[] = s.split("\'");
for (int i = 0; i < s2.length; i++) {
System.out.println(i+" value "+s2[i]);
}
mein Zweck ist hier für mein Dateiverzeichnis zu verwenden. Als ich das Dateiverzeichnis abgerufen habe, habe ich die Zeichenfolge als Licht \ Hallo \ Text.txt erhalten. In diesem Fall werden wir \ in der Zeichenfolge haben. –
Dann benutze es: => String s = "Licht \\ Hallo \\ text.txt"; Zeichenfolge s2 [] = s.split ("\\\\"); für (int i = 0; i
String s = "light\\hello\\text.txt";
String s3[] = s.split(Pattern.quote("\\"));
for (int i = 0; i < s3.length; i++) {
System.out.println(i+" value "+s3[i]);
}
Es sollte funktionieren: 'String [] Split = a.split ("\\");' – theTechnoKid
Warum denken Sie, die zweite Option wird nicht funktionieren? Können Sie eine Beispieleingabe teilen und erklären, wie sich das Ergebnis von dem unterscheidet, was Sie erwarten? – Mureinik
Ausnahme im Thread "main" java.util.regex.PatternSyntaxException: Unerwarteter interner Fehler in der Nähe von Index 1 \ –