= 3 && preg_match_all('/[a-z]/', $name) >= 3; } /** * Freies Namensfeld, das auch Firmen tragen kann (Kontaktformular): * mindestens vier Wechsel von klein auf groß („…aCoVStmZet…“), oder ein * Block Großbuchstaben + Ziffern + Großbuchstaben. */ public static function isRandomToken(string $value): bool { $value = trim($value); if (preg_match('/^[A-Za-z]{12,}$/', $value) === 1 && preg_match_all('/[a-z][A-Z]/', $value) >= 4) { return true; } return preg_match('/[A-Z]{5,}\d{4,}[A-Z]{5,}/', $value) === 1; } }