Hi.. Eigentlich habe ich Reguläre Ausdrücke in theoretische Form gut drauf, und habe das im Studium bisher so gelernt:
+ Oder
* Einmal, n Mal, oder keinmal
. (mittig Punkt also) Verkettung
Ich möchte nun mithilfe von einString.matches(regExp); testen, ob ein String eine gültige, mögliche und positive double Zahl ist...(und es soll egal sein, ob ein . oder , den Nachkommanteil vom Rest trennt) Sprich erlaubt wäre:
0.0
1231.1231
1,00000
0
1231
etc.
nicht erlaubt wäre:
0.
-1
-1.2
irgendEinText..
1,,,,
1...2
123.2.231
Soviel zu meinen Testfällen... ich dachte dabei an folgenden Regulären Ausdruck mit obigen Operatoren:
0 + 0[','+'.'][0-9][0-9]* + [0-9][0-9]* + [0-9][0-9]*[','+'.'][0-9][0-9]*
Zur Erläuterung(jeweils jeder Operand):
Enweder nur 0
ODER
0, oder 0. mit mindestens einer ziffer und danach beliebig vielen... damit zb. das Wort "0." verhindert wird.
ODER
eine Ganze Zahl
ODER
eine Zahlenfolge verbunden mit . oder , und dann einem Nachkommanteil
ZUM PROBLEM
Ich möchte das ganze nun in Java implementieren, jedoch machen mir da die Operatoren noch zu schaffen? Ich habe hier schon: Galileo Computing :: Java ist auch eine Insel (8. Auflage) – 4.6 Reguläre Ausdrücke herumgelesen... jedoch erschließt sihc mir dennoch nicht was zb \\ bedeuten soll? Und wie ein gleichwertiger + Operator aussehen sollte? -> Also ein Oder Operator.
+ Oder
* Einmal, n Mal, oder keinmal
. (mittig Punkt also) Verkettung
Ich möchte nun mithilfe von einString.matches(regExp); testen, ob ein String eine gültige, mögliche und positive double Zahl ist...(und es soll egal sein, ob ein . oder , den Nachkommanteil vom Rest trennt) Sprich erlaubt wäre:
0.0
1231.1231
1,00000
0
1231
etc.
nicht erlaubt wäre:
0.
-1
-1.2
irgendEinText..
1,,,,
1...2
123.2.231
Soviel zu meinen Testfällen... ich dachte dabei an folgenden Regulären Ausdruck mit obigen Operatoren:
0 + 0[','+'.'][0-9][0-9]* + [0-9][0-9]* + [0-9][0-9]*[','+'.'][0-9][0-9]*
Zur Erläuterung(jeweils jeder Operand):
Enweder nur 0
ODER
0, oder 0. mit mindestens einer ziffer und danach beliebig vielen... damit zb. das Wort "0." verhindert wird.
ODER
eine Ganze Zahl
ODER
eine Zahlenfolge verbunden mit . oder , und dann einem Nachkommanteil
ZUM PROBLEM
Ich möchte das ganze nun in Java implementieren, jedoch machen mir da die Operatoren noch zu schaffen? Ich habe hier schon: Galileo Computing :: Java ist auch eine Insel (8. Auflage) – 4.6 Reguläre Ausdrücke herumgelesen... jedoch erschließt sihc mir dennoch nicht was zb \\ bedeuten soll? Und wie ein gleichwertiger + Operator aussehen sollte? -> Also ein Oder Operator.