2010-10-01 2 views
0
@"/News/some news text/" 
@"/News/some other news text/" 
@"/About/Some about text/" 
@"/Abcdefg/Some abcdefg text/some more abcdefg text" 

Как вырезать первую часть строк, чтобы в итоге я получил следующие строки?Как вырезать части NSString?

@"/News/" 
@"/News/" 
@"/About/" 
@"/Abcdefg/" 

ответ

8

Используйте componentsSeparatedByString: разбить строку вверх:

NSArray *components=[string componentsSeparatedByString:@"/"]; 
if ([components count]>=2) { 
    // Text after the first slash is second item in the array 
    return [NSString stringWithFormat:@"/%@/",[components objectAtIndex:1]]; 
} else { 
    return nil; // Up to you what happens in this situation 
} 
+0

Спасибо вам большое! – Malene

+1

@Malene: Если этот ответ работает на вас, то, пожалуйста, дайте grahamparks надлежащий кредит, приняв ответ. –

+0

извините - не знал об этом. , , -ответчик принят ;-) – Malene

2

Если эти имена путей, вы можете посмотреть в пути, связанные с методами NSString, таких как pathComponents и pathByDeletingLastPathComponent.

Хотя маловероятно, что разделитель путей когда-либо изменится, тем не менее, хорошая привычка не полагаться на такие вещи и использовать специальные методы манипуляции с трассировкой, предпочитая считать, что разделитель путей будет определенным символом.

EDIT с 2013 года. Или используйте URL-адреса (точнее, объекты NS/CFURL), которые Apple довольно ясно поняли, это правильный способ сослаться на файлы с этого момента и необходимы для некоторых задач в изолированной программной среде ,

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