извлечение строк из поля MySQL - PullRequest
1 голос
/ 26 июля 2011

общее число медленных моментов дня, мне нужно извлечь разные области в зависимости от того, какой язык выбран из поля в базе данных mysql

например:

<!--:en-->Overview<!--:--><!--:es-->Overview<!--:--><!--:fr-->Présentation<!--:--><!--:ar-->نظرة عامة<!--:-->

так что, если мой язык французский, например, я хочу, чтобы часть между <!--:fr--> и <!--:-->

есть идеи?

Ответы [ 2 ]

4 голосов
/ 26 июля 2011

Обработка строк - не самая сильная часть MySQL. Но вот одна идея:

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(column_name, '<!--:fr-->', -1), '<!--:-->', 1) FROM table_name
0 голосов
/ 26 июля 2011

Более простой способ - использовать подстроку. Сначала вы можете найти индекс для языка в строке. После этого найдите индекс маркера конца () и извлеките то, что находится в середине, то есть значение, которое вы хотите.

Более сложным способом было бы использование регулярных выражений. Реализация зависит от языка, на котором вы кодируете.

...