Попробуйте это:
Допустим, у вас есть массив строк:
NSArray *[email protected][@"box3523sfgsg",@"boxsdfsdf3",@"[email protected]$#",@"[email protected]@4bag",@"[email protected]#$FR",@"tubeASAD"];
В вашем случае выше массив заполняется следующей строкой
[NSString stringByAppendingFormat:@"<p style=\"padding-left:20px;margin-bottom:-10px;\"><i>%@%@%@%@</i></p>",
wrappingBy, pack1, pack2, strFirmName];
Теперь добавьте wrappingBy
param в массив каждый раз, когда вы добавляете указанную выше строку в массив, и убедитесь, что вы не добавляете дубликаты в массив. Вы можете проверить дубликаты, прежде чем добавлять их в массив.
и в вашем случае, вы могли бы сделать
NSMutableArray *arrayNAme=[[NSMutableArray alloc]init];
//make arrayName mutable
if (![arrayNAme containsObject: wrappingBy]) {
[arrayNAme addObject: wrappingBy];
}
вы получите ИмяМассив содержит следующее:
[email protected][@"box",@"bag",@"tube"];
Теперь поиск основной строки массива, если он содержит имена wrapingBy или нет, если да , добавьте их в массив и добавьте этот массив в dicitonary:
NSMutableDictionary *myDictionary=[[NSMutableDictionary alloc]init];
for(NSString *nameString in arrayNAme) {
NSMutableArray *strnArray=[[NSMutableArray alloc]init];
for (NSString *str in arr)
{
if([str containsString:nameString])
{
[strnArray addObject:str];
[myDictionary setValue:strnArray forKey:nameString];
}
}
}
В конце у вас есть ди cообщение:
{
bag = (
"[email protected]$#",
"[email protected]@4bag"
);
box = (
box3523sfgsg,
boxsdfsdf3
);
tube = (
"[email protected]#$FR",
tubeASAD
);
}
Теперь вы можете получить каждое значение ключа и сохранить его в отдельном массиве.
Этот простой способ будет хранить их в словаре, а затем получить индивидуальный ключ и сохранить их в массиве separte! –
@TejaNandamuri Интересно, как я мог это сделать. Каждый раз, когда я получаю строку, представленную выше, является отдельным случаем, когда мы получаем эту строку, перейдя через SQL db. –
Включает ли каждый массив shud имя box/bag/tube или полную строку? –