2010-02-01 3 views
1

Я создаю код, который найдет пробел между символами и будет использовать символы перед пробелом и после него. Эти символы хранятся в NSString. Вот что я до сих пор, однако, он не видит пустого персонажа.Пустой символ в Objective-C

NSString *tempTitle = self.title; 
unsigned int indexOfSpace; // Holds the index of the character with the space 
unsigned int titleLength = (unsigned int)self.title.length; // Holds the length of the title 
for (unsigned int count = 0; count < titleLength; count++) 
{ 
    if ([tempTitle characterAtIndex:count] == "") // If the character at the index is blank, store this and stop 
    { 
     indexOfSpace == count; 
    } 
    else // Else, we keep on rollin' 
    { 
     NSLog(@"We're on character: %c", [tempTitle characterAtIndex:count]); 
    } 
} 

Я попытался nil, пустая строка ("") и "", но не помогло. Есть идеи?

+1

'indexOfSpace == count;' содержит знак двойного равенства. Вы имели в виду, что это был единственный знак равенства? – cmptrgeekken

+0

К сожалению, я не хе-хе. Благодаря! – skylerl

ответ

4

Ваш символ пробела должен быть одинарным, а не двойным кавычками. Одинарные кавычки получить Вас символьного типа в С (двойные кавычки создать строковый литерал, который по существу функционирует как char * и никогда не будет проходить сравнение.)

-[NSString characterAtIndex:] возвращает тип unichar, который является unsigned short, так что вы должны можете сравнить это непосредственно с пробелом ' ', если это то, что вы хотите сделать.

Обратите внимание, что ниль и пустая строка не полезны здесь - ни на самом деле символы, и в любом случае ваша строка никогда не будет «содержать» их.

Вы должны также увидеть методы NSString для непосредственного нахождения символов в строках, например. -[NSString rangeOfString:] и его двоюродных братьев. Это мешает вам писать цикл самостоятельно, хотя это, к сожалению, немного синтаксически многословно.

+0

А это сработало! Благодаря! Я рассмотрю метод rangeOfString, если он так же многословен, как вы говорите, я могу просто сохранить свой метод вещей, поскольку он работает. – skylerl

+0

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

Смежные вопросы