Есть PHP скрипт в кодировке UTF-8 w/o BOM, в нём проверяется введённый логин на совпадение с шаблоном:
preg_match("/^[A-Za-zА-Яа-яЁё0-9\-\_]{3,25}$/", $login);
Проблема: если вводятся русские символы, функция всегда возвращает 0. Работать начинает только когда убираю якоря начала или окончания строки. Но они в данном случае необходимы. Есть какой-нибудь способ заставить работать функцию как надо?