Mal Hilfe benötigt -> mit regulären Ausdrücken filtern

Thomas Lindner

Erfahrenes Mitglied
Hallo!

Ich komme mit den regulären Ausdrücken einfach nicht klar *zugeb*.

Ich muss einen $string überprüfen, dieser darf ausser Zahlen und Buchstaben, sowie Leerzeichen keine weiteren Zeichen enthalten, zudem müssen die Leerzeichen durch Unterstrich (_) ersetzt werden.

Eventuell kann mir ja hier einer helfen, bevor ich komplett wahnsinnig werde.

LG

Thomas
 
Hi, also die Leerzeichen durch Unterstriche ersetzen würde ich so machen:
PHP:
$string = str_replace(' ', '_', $string);

und die Überprüfung mittels einer if Abfrage und preg_match(), also etwa so:
PHP:
if(preg_match("/^[a-z0-9_]*$/i", $string))

Das erlaubt dann auch leere Zeichenketten, falls das nicht gewünscht sein sollte, einfach das * durch ein + ersetzen.
 
Zuletzt bearbeitet:
Hi Cutti :)

schau mal hier:
PHP:
<?
$string="abc 243 dhjhj 2";
$matches=preg_match("/^[ \w]*$/",$string);
print $matches;
?>

Gruß Tom
 
Zeichenklassen verstehen:
\w beinhaltet schon 0-9 :-)
Deshalb ist es überflüssig auch \d anzugeben.
 
Zurück