Vinzenz Mai: /MySQL mit regulären Ausdrücken?

Beitrag lesen

Hallo Roger,

Ich habe in einer DB-Tabelle in einem Textfeld einen serialisierten Array gespeichert, aus dem ich mittels SQL-Befehl (nicht über PHP-Funktionen) Zahlen extrahieren möchte.

Du hast somit ein kaputtes Tabellendesign. Korrigiere dieses und Dein Problem verschwindet von selbst.

Das Muster ist immer gleich:

...{s:4:"name";s:23:"85,00mm x 31,87mm (BxH)";}...

Dabei benötige ich die beiden Zahlen 85,00 und 31,87 (am liebsten mit Punkt, statt Komma). Die Zahlen können natürlich variieren zw. 0 und unendlich), es sind aber immer 2 Nachkommastellen. Gleich bleiben die Anführungszeichen, das "x" und "(BxT)".

Würgherum: Durchlaufe in einer Stored Procedure den Feldinhalt und gehe mit Zeichenkettenfunktionen Schritt für Schritt durch jedes einzelne Feld.

MySQL kann doch auch RegExp,

Ja, aber sie sind ...

aber mit dessen Einsatz bin ich nicht wirklich gut vertraut.

... nicht für Dein Ziel geeignet:
MySQL-Handbuch, Abschnitt Reguläre Ausdrücke.

Daher nochmals mein Hinweis:
Repariere Dein kaputtes Tabellendesign. Alles andere ist Unsinn.

Freundliche Grüße

Vinzenz