Как выбрать из таблицы (MySQL) только русские записи?

Статус
В этой теме нельзя размещать новые ответы.

Glory

Создатель
Регистрация
14 Апр 2007
Сообщения
30
Реакции
1
Есть таблица (база MySQL), в ней записи на русском и на английском. Как выбрать только русские или только английские?
 
В простейшем случае
Код:
SELECT `ячейка` FROM `таблица` WHERE `яячейка_для_выборки` REGEXP '[а-яА-Я]'
вернет ячейки, в которых есть буквы а-я
 
правильно понимаю , если в ячейке есть ещё и цифры, то будет REGEXP '[а-яА-Я0-9]'. да?
 
Я бы порекомендовал не забыть про пробельные символы(добавить в регулярное выражение \s) и учесть знаки препинания. А то всякое бывает =)
 
Я бы порекомендовал не забыть про пробельные символы(добавить в регулярное выражение \s) и учесть знаки препинания. А то всякое бывает =)
Зачем? Нужно выбрать например только РУССКИЕ записи. А русские записи содержат буквы а-я, так что задача решается данным запросом. Зачем чинить то, что не сломано?:)
 
Вот такая запись русская, но содержит [a-zA-Z]:
Компания Toyota — крупнейший в мире производитель автомобилей, впервые возглавивший рейтинг автокомпаний по результатам 2007 финансового года, когда на сборочных линиях концера было выпущено более 9,6 миллиона машин (это примерно равно одной машине за каждые 3,3 с

Обычно английские записи НЕ содержат вставки русскоязычного текста. Как видно из примера, в русском тексте такое зачастую случается. Поэтому в данной задаче корректнее распознавать английские записи - т.е. REGEXP '[a-zA-Z]' плюс знаки препинания, цифры, спецсимволы - доллар и прочие решетки, пробел. Остальные записи, не попадающие под "английский" шаблон - "русские". Например, запись, аналогичная примеру выше - "русская", хотя содержит русские и латинские буквы.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху