Изменение строки в массив и взаимодействие с содержимым - PullRequest
0 голосов
/ 29 ноября 2011

Я пытаюсь написать немного кода, чтобы взять строку (эта строка автоматически изменяется в зависимости от дня недели), разобрать эту строку в символы и извлечь символы в определенном порядке.Вот как это должно быть использовано:

if (DateIsBetween(aPeriodMWF, legitDate, bPeriodMWF)) period=aPeriod;
    if (DateIsBetween(bPeriodMWF, legitDate, cPeriodMWF)) period=bPeriod;
    if (DateIsBetween(cPeriodMWF, legitDate, dPeriodMWF)) period=cPeriod;
    if (DateIsBetween(dPeriodMWF, legitDate, ePeriodMWF)) period=dPeriod;
    if (DateIsBetween(ePeriodMWF, legitDate, fPeriodMWF)) period=ePeriod;
    if (DateIsBetween(fPeriodMWF, legitDate, gPeriodMWF)) period=fPeriod;
    if (DateIsBetween(gPeriodMWF, legitDate, aPeriodMWF)) period=gPeriod;

    if (period==1) {
        if(parsedCharacter='A') nextPeriodLabel.text="A Period Class";
        //repeat for parsedCharacter = b,c,d,e,f,g
    }

    if (period==2) {
        //Do the same thing, but get the second character in the string   
    }

В этом коде «parsedCharacter» должен отражать первый символ в последовательности.Однако в следующем операторе он должен будет отражать следующий символ в строке.Вот код для получения строк:

if (currentWeekType == 1) {
    if ([weekDay isEqualToString:@"Wednesday"]) sequenceString = @"ABCDEF";
    if ([weekDay isEqualToString:@"Friday"]) sequenceString = @"DGCFEAB";
}

1 Ответ

1 голос
/ 29 ноября 2011

Для извлечения отдельных символов вы можете использовать [myString characterAtIndex:i], где i - индекс в строке. В зависимости от ваших потребностей вы можете либо жестко закодировать номера индексов, либо использовать переменную-счетчик для увеличения (и, следовательно, получения следующего символа). Конечно, вы также можете скопировать вашу NSString в NSMutableString и удалить первый символ после извлечения символа, но это, вероятно, намного медленнее, чем использование переменной индекса. Остерегайтесь пробежки по концу строки (индекс больше, чем размер строки).

...