Странности с регуляркой

1. finall2 24.10.2013 / 17:48
Юзаю регулярку
preg_match('/[a-zA-Zа-яА-Я]{2,20}$/', $data)
Работает нормально. Англоязычные имена фильтрует нормально.
Пока не встречает русское "Денис", всё. Выдает ошибку.
При этом Дениз или Дени воспринимает нормально.
Сейчас сделал такой вариант :
preg_match('/[a-zA-Zа-яАаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧЧШшЩщЭэЮюЯя]{2,20}$/', $data)
Работает, но не гармонирует с моим чувством эстетизма.
Подскажите где истина?

2. Дмитрий 24.10.2013 / 17:50
мб модификатор u забыл
preg_match('/^([a-zа-яё]){2,20}+$/isu', $data)

3. Кевин Митник 24.10.2013 / 17:57
да, так работает норм /[a-zA-Zа-яА-Я]{2,20}$/ius

4. Александр 24.10.2013 / 19:16
зачем большие буквы писать, если вы используете модификатор i ?

5. finall2 25.10.2013 / 15:52
Вопрос решил, спасибо.

URL: https://visavi.net/topics/39311