Regex Look-around assertions

Hey,

Hab da mal ne Kleine Frage. Und zwar geht es um folgendes,
ich verstehe nicht, warum dieser Ausdruck ".(?=[0-9])" mir unter Java
bei z.b. diesem String "a5" kein true liefert?
Habe ich irgendwas falsch versanden oder warum funktioniert das nicht?
Anbei gesagt, ich benutze unter Java die Funktion Pattern.matches();.

Ich wäre dankbar für jede Antwort.

mfg virus
 
Hi,

also wenn Du mit regex nach genau dieser Zeichenfolge suchen möchtest, müßtest Du folgendes Pattern verwenden:

Code:
Pattern pa = Pattern.compile("\\w\\d");
Matcher ma = pa.matcher("a5");
		
while(ma.find()){
	System.out.println(ma.group());
}

Beschreib doch mal, nach was Du genau suchen möchtest. In meinem Beispiel wird jetzt nach einem Buchstaben oder einer Ziffern, gefolgt von einer Ziffer gesucht.

Gruß Evil
 
hab meine frage wohl falsch formuliert ich wollte
mich nur nach der funktiosweise der look around assertions erkundigen.
da diese irgendwie nicht so funktionieren wie ich dachte. also so wie
im beispiel. trotzdem schonmal danke

mfg virus
getippt mit mda, sry für groß klein schreibung
 
Danke, ich kann selber mit google umgehen.
Und wie du vielleicht nicht verstanden hast, geht es mir nicht darum regex zu erlernen, damit habe ich mich schon auseinandergesetzt, jedoch finde ich kein passendes/funktionierendes tutorial zu den look around assertions.
Da wie bereits gesagt Beispiele wie die von Wikipedia nicht funktionieren.
Und da ich aus keinem gefundenen text herauslesen kann warum.

mfg virus
 
Zurück
Oben