Я ищу, чтобы определить, является ли строковое значение из пользовательского ввода (UITextField) "пустым", если оно не равно нулю. Проверка того, что [textField.text isEqualToString:""]
недостаточно, потому что я хочу избежать ввода пробела/пробела (например, несколько пробелов).
Кажется, что это сообщение является хорошим решением для моей конкретной проблемы в этом сообщении StOv.
В основном это происходит примерно так, но я подозреваю, что должен (или должен) быть лучший способ:
NSString *strResult;
NSScanner* scanner = [NSScanner scannerWithString:textField.text];
BOOL hasValidChars = [scanner scanUpToCharactersFromSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]
intoString:&strResult];
// if hasValidChars == YES, we've got nonwhite space chars collected into strResult
Это явно работает только для моего конкретного обстоятельства, и даже тогда оно потерпит неудачу, если первый символ будет пространством, но данные, которые я хотел, следовали. Итак, я понимаю, что я немного испорчен Ruby, но в трюках строки Cocoa должна быть проверенная и истинная идиома.
Aaaand ответ уже есть, мои извинения:
NSString -stringByTrimmingCharactersInSet:
сделает это:
Возвращает новую строку, сделанную путем удаления с обоих концов приемника символы, содержащиеся в данном набор символов.
Мне все еще интересно узнать, есть ли у кого-нибудь другие/предпочтительные способы сделать это.