Die Idee ist, alle nicht-alphabetischen Symbole aus einer Zeichenfolge zu entfernen.php preg_replace ignoriert^in [abc] Konstruktion
$string = "abcd 5858add";
print preg_replace('/[ˆa-z]/', '', $string)."\n"; //produces ' 5858' (wrong)
print preg_replace('/[a-z]/', '', $string)."\n"; //produces ' 5858' (right)
Die erste Regexp sollte alle nicht alphabetischen Symbole entfernen. Die zweite sollte alle alphabetischen Symbole entfernen. Aber das Ergebnis ist das gleiche für beide. Warum?
Getestet auf PHP 5.5.30, PHP 5.4.16
Nachdem ich meine Antwort gepostet habe, habe ich gerade Ihren Titel bemerkt, der das Problem ziemlich deutlich zeigt :) –