2017-02-11 2 views
1

Ich verwende preg_replace, um den Vor- und Nachnamen aus meiner Datenbank zu validieren. Wenn ich preg_replace nicht einschließe, werden die Werte wie normal weitergegeben, aber wenn ich es benutze, wird nichts übergeben. Hier ist mein aktueller Code:PHP preg_replace String entfernen

$firstname = preg_replace("/^[A-Za-z]+$/", "", $firstname); 
$lastname = preg_replace("/^[A-Za-z]+$/", "", $lastname); 

ich ähnliche Validierung verwenden für andere Variablen, ohne Frage, es ist wirklich nur für diese geschieht. Ich bin mit der Validierung nicht sehr vertraut, daher würde jede Hilfe geschätzt werden.

+0

Die Regexs versuchen, Namen durch leere zu ersetzen. – Mohammad

+0

Was versuchen Sie zu erreichen? Versuchen Sie, alle nicht englischen Buchstaben zu entfernen? Derzeit entfernen Sie alle Zeichen, wenn die Zeichenfolge nur englische Buchstaben enthält. – jkrnak

+0

Ich möchte es nur Groß- und Kleinbuchstaben sein. –

Antwort

0

Sie benötigen /[^A-Za-z]/ Regex verwenden, wird dies herauszufiltern alle außer A-Z und a-z

$string = '09test'; 
$new_string = preg_replace("/[^A-Za-z]/",'',$string); 
echo $new_string; //prints test 
+0

Super, das hat für mich funktioniert. Vielen Dank. –