Problem mit regul. Ausdruck
Ralf
- php
Hi,
bis jetzt läuft mein Script in etwa so ab:
if($newname == "") {
.. sag, es darf nicht leer sein ...
exit;
} else {
$filename = "$newname";
}
Ich möchte jetzt noch hinzufügen, daß $newname nur Zahlen, Zeichen und Unterstrich haben darf. Also habe ich daraus fogendes gemacht:
if($newname == "") {
.. sag, es darf nicht leer sein ...
exit;
}
elseif (preg_match("/[1]*$/","$newname"))
{
... darf nur aus Buchstaben, Zahlen und Unterstrich bestehen ...
exit;
} else {
$filename = "$newname";
}
Problem: Das funktioniert nicht, leider passieren sämtlich Sonderzeichen meine Prüfung :-(
Weiß jemand, warum?
Grüße
Ralf
a-zA-Z0-9_ ↩︎
Hallo Ralf,
Ich möchte jetzt noch hinzufügen, daß $newname nur Zahlen,
Zeichen und Unterstrich haben darf.
Dann kannst du das ganze so abkürzen:
if(!preg_match('/^\w+$/',$newname)) {
echo 'boehze!';
exit;
}
$filename = $newname;
Grüße,
CK
if(!preg_match('/^\w+$/',$newname)) {
echo 'boehze!';
exit;
}
Hi Christian,
danke, das läuft jetzt. Ich dachte immer, \w dürfte nur Buchstaben enthalten :-)
Kann das sein, daß mein alter Code wegen des fehlenden ausrufezeichens nichts blockte?
Grüße
Ralf
Hallo Ralf,
danke, das läuft jetzt. Ich dachte immer, \w dürfte nur Buchstaben
enthalten :-)
\w ist dasselbe wie [0-9a-zA-Z_] :)
Kann das sein, daß mein alter Code wegen des fehlenden
ausrufezeichens nichts blockte?
Ja. Deine Logik war einfach falsch.
Grüße,
CK