String Delimiter (Split) einlesen

Rouven50

Aktives Mitglied
hey
ich wollte mal nachfragen wie es möglich ist einen string als delimiter einzulesen - wenn ich einen string splite und .split benutze funktioniert das nur wenn ich ein buchstabe oder eine ziffer eingebe aber nicht wenn ich zb "01234" eingebe

bsp:

String string = "zu4dumm,7ich789bin6heute9 nicht4fit";
String delimiter = "234";

nachher:

"zu" "dumm,7ich789bin6heute9 nicht" "fit"

aber das macht er nur wenn ich nur "4" einlese aber nicht bei "234" oder so.
 
String#split erwartet einen Regex.
Wenn du nach 2, 3 oder 4 splitten willst, dann sollte es sowas tuen wie: "2|3|4"
 
Mach das doch von hand 🙂

EDIT:
zum beispiel so:
Java:
    private static String orRegex (String s) {
    	s = s.replaceAll("(.)", "$1|");
    	s = s.substring(0, s.length()-1);
    	return s;
    }
 
Zuletzt bearbeitet von einem Moderator:
ja hm würde es schöner finden wenn man das nicht selbst eingeben muss… hab schon gedacht den string als char array zu speichern und dann nach jedem buchstaben/ziffer das einfuegt allerdings weiß ich nicht wie ich die einzelnen chars wieder zum string zusammen bekomme^^
 
Er setzt zwischen jedes Zeichen ein |.

Java:
    public static void main(String[] args) {
    	String s = "234";
    	System.out.println(orRegex(s));
    }
    
    private static String orRegex (String s) {
    	s = s.replaceAll("(.)", "$1|");
    	s = s.substring(0, s.length()-1);
    	return s;
    }
 

Zurück
Oben