Как получить все абзацы из NSString в порядке абзацев в iOS?
Я получаю строку из API, как это
New version of WhatsApp Messenger is
now available.
JANUARY 12, 2013
Your upgrade will bring improvements, larger
group chats and new features such as
Profile Photos!
Есть ли способ получить абзацы из вышеуказанной строки?
я использовал NSArray *paragraphs = [result componentsSeparatedByString:@"\n"];
Согласно моему требованию он должен иметь 3 строки
paragraphs= {
"New version of WhatsApp Messenger is now available."
"JANUARY 12, 2013"
"Your upgrade will bring improvements, larger group chats and new features such as Profile Photos!"
}
но его возвращение
paragraphs= {
"New version of WhatsApp Messenger is"
"now available."
"JANUARY 12, 2013"
"Your upgrade will bring improvements, larger"
"group chats and new features such as"
"Profile Photos!"
}
3 ответа
Насколько я вижу, вывод правильный, потому что есть 5 разрывов строк. вход не то, что вы хотите. Ваш вклад должен быть:
New version of WhatsApp Messenger is now available.
JANUARY 12, 2013
Your upgrade will bring improvements, larger group chats and new features such as Profile Photos!
Это взломать ваш вопрос
1 Проверьте все диапазоны символов новой строки.
2 удалить символ новой строки в определенном диапазоне.
3.done
1. int count = 0;
for (unsigned int i=0; i < [result length]; ++i) {
if ([result characterAtIndex:i] == '\n') {
NSLog(@"index %i",i);
++count;
}
}
2.
NSRange first = {36, 1};
NSRange fourth= {113,1};
NSRange fifth={150,1};
NSString *stringWithSpaces;
stringWithSpaces = [result stringByReplacingCharactersInRange:first withString:@" "];
result=stringWithSpaces;
stringWithSpaces = [result stringByReplacingCharactersInRange:fourth withString:@" "];
result=stringWithSpaces;
stringWithSpaces = [result stringByReplacingCharactersInRange:fifth withString:@" "];
result=stringWithSpaces;
NSArray *paragraphs = [result componentsSeparatedByString:@"\n"];
NSLog(@"Paragraph=%@",paragraphs);
Готово.
счастливое кодирование
Вы можете попробовать это:
NSArray* newLinestring = [result componentsSeparatedByCharactersInSet:[NSCharacterSet newlineCharacterSet]];
NSMutableArray *newLinesArray = [NSMutableArray array];
[result enumerateSubstringsInRange:NSMakeRange(0, result.length) options:NSStringEnumerationByParagraphs usingBlock:^(NSString *substring, NSRangesubstringRange, NSRange enclosingRange, BOOL *stop) {
// ADD TO AN ARRAY HERE THE SUBSTRINGS
}];