| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: разработка для Web > Проверка например ника при регистрации... |
| Автор: Asan 24.6.2003, 08:05 |
| Доброе время суток всем! У меня такая проблема: При регистрации в чате необходимо проверять ник на английские и русские символы! Если при совмещении ру. и англ. букв есть выдать ошибку! Т.е. ники ак бы в чате должны быть либо тока русскими буквами либо тока английскими! Помогите, посоветуйте! |
| Автор: acp 24.6.2003, 17:21 | ||
| Не люблю в качестве ответов писать код и мог бы ответить "смотрите доку по регулярным выражениям" Но тут настолько просто, что можно в принципе и код написать (а может у меня просто хорошее настроение).
Вроде будет работать. |
| Автор: acp 24.6.2003, 23:33 | ||
| Кстати, есть более короткий вариант записи подобного условия. Но он не особенно хорош. Т.к. может зависеть от версии языка.
Здесь применяется xor, но он плох тем, что он не логический, а побитовый. Но ведь представление истины и лжи может измениться, и это работать не будет. |
| Автор: Asan 25.6.2003, 07:51 |
| Спасибо! Будем пробывать! |
| Автор: acp 25.6.2003, 17:12 |
| Только надеюсь вы понимаете, что, когда я писал а..я, я имел в виду, что здесь надо указывать все буквы алфавита А работать будет, т.к. первый пример прост по определению, а последний пример я пробовал. |
| Автор: kvk 25.6.2003, 18:22 |
| Чтобы не указывать все А-Я я пользуюсь [Ю-Ъю-ъ] |
| Автор: acp 26.6.2003, 01:04 | ||
Здорово. И такое действительно работает по все ОС? |
| Автор: Asan 27.6.2003, 07:16 |
| Ребят я сделал вот так у меня всё хорошо работает if ((($query{'name'} =~ /[А-Яа-я]/) && ($query{'name'} =~ /[A-Za-z]/)) || ($query{'name'} =~ /[\#\";\/:\\\?\*<>\| \'\-\+,.&\=\~\`\$\№\%\^(){}\[\]]/) or not $query{'name'}) то выдаем ошибку иначе всё ОК |