2013-04-23 3 views
0

Холодное кто-то может объяснить, почему это возвращает истину:Mysql RLIKE/preg_match ошибка

SELECT BINARY 'â' RLIKE '[™]'; 
SELECT BINARY 'é' RLIKE '[©]'; 

Что может быть исправить? Это некоторая неправильная конфигурация с моей стороны?


UPDATE:

обнаружили, что использование (™|©) вместо [™©] будет работать в качестве первого обходного

ответ

1

documentation Из:

Предупреждение
Операторы REGEXP и RLIKE работают побайтово, поэтому они не являются многобайтовыми и могут создавать неожиданные результаты с многобайтовыми наборами символов .

+0

Теперь я понимаю, что оператор '[]' используется для одного байтового совпадения для каждой записи, а '(|)' может использоваться для групп символов, поэтому многобайтовая проблема не влияет на его вывод , –

Смежные вопросы