warum Punkt in eckigen Klammern passt kein Zeichen?

8

Warum dieser [.]+ Java reguläre Ausdruck nicht mit meinem "foo" Text übereinstimmt, während .+ perfekt übereinstimmt (getestet hier )?

    
yegor256 28.02.2013, 15:30
quelle

1 Antwort

21

[.] ist gleichbedeutend damit, das . (dot) -Zeichen, d. h. \. , zu entfernen.

Sobald das Zeichen in einer Zeichenklasse erscheint, verliert es seinen Status als Sonderzeichen.

Da foo keine Punkte enthält, wird nichts gefunden. .+ hingegen ist ein gieriger Wildcard-Ausdruck, der allem entspricht.

    
Reimeus 28.02.2013, 15:30
quelle

Tags und Links