Проверка текстового поля с помощью регулярного выражения

Мне нужна помощь с кодом, который смотрит на текстовое поле, убедитесь, что оно начинается с символа (+ или -), а затем имеет 3 целых числа после него.

Итак, действительные данные выглядят как +234 или -888

Итак, я запустил этот код, но с ним есть 2 проблемы

  1. Он правильно подтверждает, что введены только 4 символа. Но по какой-то причине вам нужно снять фокус с текстового поля, чтобы кнопка «Готово» на клавиатуре сработала и скрыла клавиатуру. Если я введу в текстовое поле менее 4 символов, тогда кнопка «Готово» будет работать нормально. Но я не хочу, чтобы пользователь вводил что-либо, кроме 4 символов, а затем нажимал Готово и скрыл клавиатуру. Это первая проблема ....

  2. Я не знаком с регулярными выражениями и с тем, как их использовать в iphone. Поэтому мне нужно добавить в этот код регулярное выражение для вышеуказанного требования.

     - (BOOL) textField:
    {
     NSString * newString = [textField.text stringByReplacingCharactersInRange: диапазон withString: строка];
     возврат! ([длина новой строки]> 4);
    }
    // Готово, чтобы скрыть клавиатуру
    - (IBAction) Готово: (id) отправитель
    {
    
    }
    
11
задан Greg 4 November 2013 в 20:12
поделиться