Reguläre Ausdrücke

MariusMeier

Mitglied
Hallo zusammen

Ich habe folgenden Code geschrieben:

Code:
public class Pruefer {
	static Pattern p;
	public static boolean zahlDouble(double zahl) {
		p = Pattern.compile("[+-.]?[0-9]+");
		Matcher m = p.matcher("" + zahl);
		return m.matches();
	}
	
	public static boolean zahlString(String zahl) {
		p = Pattern.compile("[+-]?[0-9]?[.]+");
		Matcher m = p.matcher(zahl);
		return m.matches();
	}
}

Beide Methoden funktionieren wunderbar... doch gebe ich die Zahl 1.0 ein, geben beide methode false zurück. Wie kann ich dem compile sagen, dass es Punkte auch berücksichtigt.... (Eine weitere Frage wäre dann, falls das compile Punkte berücksichtigt sollte ja nur ein Punkt eingegeben werden => 1.0 = true ; 1.9.4 => false funktioniert dann das so )

MFG Marius Meier
 
Wenn du das bisher hinbekommen hast sollte der Rest doch nun kein Problem sein. Versuchs doch mal :)
 
Mh, habe das ganze einfacher gelöst.... habe es mit Double.parseDouble(String) gemacht.... falls dieser eine Exception wirft dann weiss ich dass es keine gültige Eingabe war.

MFG Marius Meier
 
Zurück