Hi, wie prüfe ich mit einem regulären Ausdruck ob mein text aus beliebigen Leerzeichen besteht, geht das einfach so (" *") (JAVA)?
Reicht es wenn ich einfach ("hierEinLeerZeichenRein*") mache?
Also ein lerzeichen, dann direkt danach ein Stern?
3 Antworten
Normal wäre etwas ala:
[:s:]*
Kommt aber letztlich auf die Implementierugn an.
Da hast DU natürlich recht, er match keinen oder beliebig viele whitespaces - in der Regel wirst Du eher sowas nutzen:
^[[:space:]]*$
weil Du oft Whitespacezeilen und Leerzeilen gleichbehandelst.
ich weiss nicht was du mich belehren willst. fakt ist , das der quantisator + sein muss . die aufgabe ist 0 oder 1 und somit ist dein ganzer ausdruck immer noch NULL oder EINS . da bringen auch doppelte Klammern nichts. und vor allem nicht anfang und ende . ich weiss ja nciht was du ließt. aber deine aussage hat nichts mit der ausage von mir zu tun geschweige den mit der aufgabenstellung .
\s+
prüft, ob mindestens ein Whitespace-Zeichen vorhanden ist. Unter die Whitespace-Zeichen fallen Spaces, Tabulatoren, etc.
Wenn danach ein Stern folgen muss, musst du folgendes nutzen:
\s\*
Nicht vergessen, die Backslashes im Java-String noch zu escapen. (Wären dann also zwei Doppel-Backslashes)
hab ich so mein problem mit, die aufgabe war es ein LEERZEICHEN zu finden , wenn ich aber nun ein TAB habe , habe ich ein TRUE obwohl ich kein LEERzeichen habe . Er hätte ja sonst nach WhiteSpace zeichen gefragt ?
immer diese interpretation . als Prüfer und entsprechenden test unit wärest du durchgefallen . eine testunit mit TAB eine mit Leezeichen , wäre FLASE , TRUE und nicht TRUE , TRUE .
ich verstehe euch immer nicht, sind die \s mengen dinger sinnvoller als einfach ein leerzeichen zu machen , ist das so das versnoppte , ich mach was ich will und nicht was du fragst. wobei das in der realen welt wirklich ein problem ist, ob da ein tab ist oder ein leerzeichen , spätestens wennich da was später zusammen führe, wieder nach tabs splitte und plop hab ich da was seperates weil es ein tab war und kein leerzeichen .
beliebigen Leerzeichen
Das interpretiere ich als mehrere Möglichkeiten, also auch Tabulatoren. Ansonsten hätte FS nicht "beliebigen" geschrieben.
Er hätte ja sonst nach WhiteSpace zeichen gefragt
Schonmal drüber nachgedacht, dass nicht jeder weiss, was Whitespace überhaupt ist?
als Prüfer und entsprechenden test unit wärest du durchgefallen . eine testunit mit TAB eine mit Leezeichen , wäre FLASE , TRUE und nicht TRUE , TRUE .
Kommt drauf an, wie die Tests geschrieben sind...
Deinen letzten Absatz verstehe ich sprachloch nicht ganz.
das wäre falsch was du vörschlägst , den der * sagt 0 oder mehrere
um mindestens 1 oder mehrere zu haben wäre + das richtige
/ +/
also leerzeichen und das plus zeichen
oder wenn du andere begrenzer hast dann
(" +")
nicht der stern , der sagt doch auch 0 also keine