Регулярное выражение для пароля в iPhone - PullRequest
1 голос
/ 16 марта 2011

Я довольно слаб в создании регулярных выражений. Так что я здесь.

Мне нужно регулярное выражение, удовлетворяющее следующему.

NSString *nameRegex =@"My RegEx"; 
NSPredicate *nameTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", nameRegex]; 
validationResult=[nameTest evaluateWithObject:password];

Это условия

  1. Он должен содержать буквы и цифры

  2. Минимум 7 символов Макс. 32 символа

  3. Без пробела

  4. Без символов

Пожалуйста, помогите ..

Ответы [ 2 ]

6 голосов
/ 16 марта 2011

Вот как вы это делаете!

/ ^ [a-zA-Z0-9] {7,32} $ /

Не забывайте маркеры «от начала до конца».

Для записи, если вы хотите, чтобы строка определенно включала и букв и цифр, это невозможно сделать с одним регулярным выражением.(Фактически, математически вы могли бы сделать это, но регулярное выражение было бы огромным.)

Просто запустите вышеуказанную проверку и ТОГДА ТАКЖЕ ПРОВЕРЬТЕ , что она содержит букву: / [a-zA-Z] /

И ТОЛЬКО ТЕСТ ТАКЖЕ что в нем содержится цифра: / [0-9] /

Это самый простой способ.

0 голосов
/ 16 марта 2011

Как эксперт без регулярных выражений, я бы решил эту проблему, разбив критерии на отдельные тесты, которые затем можно было бы легче понять и изменить, т.е.Я считаю, что это невозможно сделать с помощью одного регулярного выражения, по крайней мере, не понятным образом:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...