MySql REGEX

Hi,

ich benötige eine SQL abfrage die mir alle einträge liefert die in der spalte title NICHT mit einem buchstaben anfangen, wichtig mit Buchstaben sind auch Umlaute wie Ö Ü etc. gemeint.

Mein aktueller Versuch:

Code:
SELECT * FROM entries WHERE title NOT REGEXP '^[[:alpha:]]'

In den Testdaten finden sich Folgende Einträge:

Code:
":D testeintrag"
"/nochmehrtests"
"¿mehrtests"

Mein select liefter aber nur
Code:
":D testeintrag"
"/nochmehrtests"

Wieso matched ein string der mit ¿ anfängt nicht?
 
Code:
SELECT * FROM entries WHERE title NOT REGEXP '^[abcdefghijklmnopqrstuvwxyzöüa]'

Nur so ne Idee (von der Theorie her)...
 
würde funktionieren ich kann aber nicht sicher sein das nicht noch anderen buchstaben hinzukommen wie Š zB.

ich versteh einfach nicht wieso ein das ¿ als char durchgeht wäre nice wenn das jemand weis.
 
mime: dadurch würden doch nur alle alphawerte aus latin1 ausgeschlossen, oder? Kommen also sprachen mit hexwerten dazu, die außerhalb dieses Bereiches liegen, funktioniert das nicht mehr.

Du suchst alle Zeilen, die nicht mit einem Buchstaben anfangen. Du suchst also Zeilen, die mit Zeichen und Zahlen anfangen?
 
Du suchst alle Zeilen, die nicht mit einem Buchstaben anfangen. Du suchst also Zeilen, die mit Zeichen und Zahlen anfangen?

genau. im moment habe ich noch keine lösung für das problem gefunden ausser :alpha: in verbindung mit einer ausnahmenliste zu verwenden. das ist halt nicht so optimal
 
Zurück
Oben