2014-02-19 7 views
0

Я пытаюсь разобрать NSString по-своему, и я не могу точно понять, как это сделать (но я подозреваю, что это потребует регулярных выражений). У меня есть NSString с некоторым текстом без пробелов вообще, например: «Thisisatest». Мне нужно, чтобы этот текст разбирался в серию из двух символов, предпочтительно в NSCountedSet, потому что мне понадобятся подсчеты их появления. В приведенной выше строке вывод будет: Th-1, hi-1, is-2, si-1, sa-1, at-1, te-1, es-1, st-1. В конце концов, мне нужно будет сделать это для наборов из трех символов (Thi-1, his-1, isi-1, ...) и наборов из четырех символов (This-1, hisi-1, ...). Возможность установить, следует ли игнорировать дело, будет бонусом. Большое спасибо!Анализ строк из нескольких символов

+3

Звучит здорово. Идите прямо вперед и сделайте это. Что за вопрос? – matt

+2

Просто следуйте строкам, подбирая подстроки их NSRange ('substringWithRange:'). Я не вижу, как задействованы регулярные выражения. Это чистая грубая сила. – matt

+0

Вы также можете найти ['NSScanner'] (https://developer.apple.com/library/mac/documentation/cocoa/reference/foundation/classes/NSScanner_Class/Reference/Reference.html) для использования в этой задаче , – user1118321

ответ

0

Ничего. После долгих проб и ошибок я получил это для работы:

NSCountedSet *digraphSet = [NSCountedSet set]; 

for (NSUInteger n = 0; n <= [text length]; n++) 
{ 
    NSRange range; 
    range.location = n; 
    range.length = 2; 

    if (n + 2 <= [text length]) 
    { 
     [digraphsSet addObject:[text substringWithRange:range]]; 
    } 
} 
+0

Я не вижу, как задействованы проб и ошибок. То, что вы сделали, именно то, что я описал в своем комментарии, - три дня назад. – matt

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