2 Stimmen

Brauche Hilfe bei Hard Regex

Ich brauche eine Regex, die prüft, ob eine Zeichenfolge nur Buchstaben (a-z) enthalten und dass der erste Buchstabe ist Großbuchstaben, können Sie nicht 2 Buchstaben in einem Wort Großbuchstaben wie: THomas oder THomAS aber Thomas Anderson (auch Thomas Anderson) wäre gültig

aussehen:

The Magician Of The Elfs wäre gültig, aber nicht ThE MaGiCiAN oF ThE ELFS

if (!preg_match("??", $name)) {
   echo "Invalid name!";
}

Ich hoffe, Sie verstehen das!

Tomasz

Ungültig:

MaGIciaN Of The ELFz
THomas anderson

Gültig:

Magician of the elfs
Magician Of the Elfs
Magician of The elfs
Thomas Anderson
Thomas anderson

Grundsätzlich möchte ich nicht, dass es möglich ist, mehr als einen Großbuchstaben in einem Wort, nicht in einem Satz zu haben.

1voto

ghostdog74 Punkte 305138
$str = "ThE MaGiCiAN oF ThE ELFS";
$s = explode(" ",$str);
foreach ($s as $k){
    if ( ! (preg_match("/^[A-Z][a-z]+/",$k) )){
        print "$str does not match.\n";
        break;
    }
}

0voto

h-markus Punkte 1
if (preg_match("\w[A-Z]", $name)) {
    echo "invalid name!";
}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X