Получить количество пробелов в начале строки - PullRequest
2 голосов
/ 26 января 2012

Я попробовал следующую реализацию:

NSString *string = @"    Test";
NSString *spaces = @"";

NSScanner *scanner = [NSScanner scannerWithString:string];
[scanner scanCharactersFromSet:[NSCharacterSet whitespaceCharacterSet] intoString:&spaces];

Количество пробелов должно быть [spaces length]. Тем не менее, все тесты, которые я пробовал, всегда возвращают 0.

Есть идеи?

1 Ответ

3 голосов
/ 27 января 2012

Используйте setCharactersToBeSkipped:.Документы говорят:

Набор символов по умолчанию для пропуска - это набор пробелов и набор символов новой строки.

Так что он просто молча пропускает префикс пробела.

Есть еще один способ сделать это:

NSUInteger prefixLength = [string rangeOfCharacterFromSet: 
    [NSCharacterSet whitespaceCharacterSet]];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...