RegEX - Teilstring

reibi

Top Contributor
Hi

ich möchte aus folgendem String "Fahr-mal-1/4-langsamer-als-dein-tacho-anzeigt" mittels 2 regExen folgende teistrings rausziehen:

1.) "langsamer" --> 4tes Wort
2.) "4" --> nach dem "/" und vor dem "-"

Wie mach ichn das?

RegExes sind wohl irgendwie nich meine Welt

Gruss
 
Ich kann dir schon eine RegEx geben die das tut. Die Frage ist aber was denn der eigentliche Gedanke dahinter ist. Sprich kannst du etwas allgemeiner ausdrücken nach was du im String suchst? Vllt noch zwei oder drei weitere Beispiel-Strings posten, zusammen mit dem Ergebnis was du erwartest.
 
So auf die schnelle und "dreckig" :

Java:
public static void main(String[] args) {
		String s = "Fahr-mal-1/4-langsamer-als-dein-tacho-anzeigt";
		Pattern p2 = Pattern.compile("/(.*?)-");
		Pattern p1 = Pattern.compile(".*?\\-.*?\\-.*?\\-(.*?)\\-");
		Matcher m = p2.matcher(s);
		
		while (m.find()){
			System.out.println(m.group(1));
		}
		
		m = p1.matcher(s);
		
		while (m.find()){
			System.out.println(m.group(1));
		}

	}

p2 ist halt die Regex für das was zwischen / und dem - steht, und die p1 halt für das vierte Wort
 
Zuletzt bearbeitet:
Oder bei diesem simplen Beispiel vielleicht auch einfach [c]str.split("\\-")[/c]? Oder ist die Stelle, an der [c]1/4[/c] o.ä. vorkommt, variabel?
 
Hallo
So auf die schnelle und "dreckig" :

Danke ;-) Funktioniert übrigens prima. Und obs dreckig ist is eh egal - weil man das im config-file dann einstellen kann. Der ders schön haben will und das drauf hat, der machts ;-)

Oder ist die Stelle, an der 1/4 o.ä. vorkommt, variabel?
Jep es ist praktisch alles variabel - STringzerlegung mit Java wäre sonst kein Problem ;-)

Aber nicht mehr heute. Bzw, doch, heute, aber nicht mehr heute nacht
Schläfst Du noch? ;-)
 

Zurück
Oben