Hi, wie prüfe ich mit einem regulären Ausdruck ob mein text aus beliebigen Leerzeichen besteht, geht das einfach so (" *") (JAVA)?

3 Antworten

Normal wäre etwas ala:

[:s:]*

Kommt aber letztlich auf die Implementierugn an.

TechPech1984  28.11.2021, 00:35

nicht der stern , der sagt doch auch 0 also keine

0
KarlRanseierIII  28.11.2021, 00:43
@TechPech1984

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.

0
TechPech1984  28.11.2021, 00:48
@KarlRanseierIII

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 .

0
\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)

Woher ich das weiß:Berufserfahrung – Informatiker Applikationsentwicklung
TechPech1984  28.11.2021, 01:04

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 .

0
Lezurex  28.11.2021, 01:18
@TechPech1984
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.

0
Von Experte FaTech bestätigt

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

(" +")