Как проверить набор символов символов в цели c?

Почему это занимает range.lengthnil, Я ввел текст Demo@123, В этом особом характере их но длина будет nil,

NSRange rang = [textField.text rangeOfCharacterFromSet:[NSCharacterSet symbolCharacterSet]];

if ( !rang.length ) {
    return NO;  // no specialCharacter
}

1 ответ

NSRange это не объект, это структура. Потерять * персонаж.

NSRange rang = ...

не

NSRange *rang = ...

Вы должны получить предупреждение за это.

Окей, просматривая таблицы Unicode, кажется, что @ не символьный символ Это относится к пунктуации ([NSCharacterSet punctuationCharacterSet]).

Другие вопросы по тегам