preg_match mehrere Ausdrücke
Hallo Leute, ich Frage mich, wie konnte ich erstellen e regExp, der sagt:
"diese Zeichenfolge enthalten kann, 1-25 Buchstaben, dass sind nicht diese bestimmten Worte:"root","bin","download","shutdown"
Also dachte ich:
$dang_words="/(root)|(bin)|(shutdown)|(download)/";
$reg_exp="/^[a-z]{1,25}$/";
if(preg_match($reg_exp,$field) || !preg_match($dang_words,$field))
{
echo "your input it's okkk!";
}
else
echo "this is a bad word!!";
Aber es funktioniert nicht
warum?
Dank
Luca
- Meinst du, dass die Zeichenfolge muss nicht einer der bösen Worte oder darf keine bösen Worte? So, würde
rubinia
erlaubt sein, oder nicht? - Ändern Sie einfach die | | && in Ihre wenn.
- ich will einfach nur, um zu erlauben, alphabet Buchstaben, aber nicht nicht jede gefährliche Wort!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie Ihre logische Operatoren, versaut.. einfach Nur anders aus || zu &&.
Schließen... Versuchen Sie dies:
Verwendet es eine vorwärts Behauptung
So, es wird:
-1
? Es funktioniert in einer regex anstelle von zwei...?Ich denke, dein Problem liegt mit allen ( ). In einigen alten code, den ich erstellt vor einer Weile habe ich diese verwendet:
Dies alles korrekt funktioniert. Ein gehen ohne die Klammern um jedes einzelne Wort.