regulärer Ausdruck gesucht
Christian Bliß
- perl
0 Stefan Bach0 Siechfred0 Pitt
Hallo,
würde gerne ein Feld ($name) folgender Prüfung unterzeihen:
Das Feld darf enthalten:
1. Großbuchstaben
2. Kleinbuchstaben
3. Leerzeichen
4. Den Punkt "."
sonst nichts!
Welchen regulären Ausdruck kann ich verwenden ? Welche Abfrage (if oder unless)?
Hi,
würde gerne ein Feld ($name) folgender Prüfung unterzeihen:
- Großbuchstaben
- Kleinbuchstaben
- Leerzeichen
- Den Punkt "."
Welchen regulären Ausdruck kann ich verwenden ? Welche Abfrage (if oder unless)?
Baue dir zunächst eine Zeichenklasse nach deinen Vorgaben, die beliebig oft vorkommen darf ("*"):
$suchmuster = '[A-Za-z. ]*';
Du willst, dass $name nur Zeichen deiner Klasse enthält, also muss es mit einem dieser Zeichen beginnen ("^"), beliebig oft vorkommen und natürlich auch mit einem dieser Zeichen enden ("$"). Das ganze ergibt dann:
if ( $name =~ /^$suchmuster$/ ) {
print "OK";
}
Ich hoffe, dass ich um die Uhrzeit nichts übersehen habe, teste es einfach mal.
Viele Grüße
Torsten