Каждый раз я получаю строку с моего сервера как:
"123:342:431:234& 232:2344:433:434& 234:453:534:3445&"
но иногда я получаю
"234:453:534:3445& 123:342:431 232:2344:433:434&"
Я хочу отказаться от этих сообщений (без концов с "&") например: &abc;123:342:431
. Я пытался, но я не знаю, где я делаю ошибки.
Вот мой код:
- (BOOL)ashCheckandsemiclonCheck:(NSString *)string {
if([string rangeOfString:@"&abc"].location != NSNotFound) {
NSLog(@"is here");
NSString *pattern = @"&abc[^&]+&";
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:pattern
options:0 error:NULL];
[regex enumerateMatchesInString:string options:0 range:NSMakeRange(0, [string length])
usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
NSRange range = [result range];
matched = [string substringWithRange:range];
NSLog(@"%@", matched);
}];
NSLog(@"filtered Message :%@", matched);
int times = [[matched componentsSeparatedByString:@"&"] count] - 1;
NSLog(@"counted times :%i", times);
if (times == 2) {
return TRUE;
} else {
return FALSE;
}
} else {
return FALSE;
}
}
Я хочу вызвать этот аргумент, если у меня есть два &
, но в моем коде я получаю ошибку NSLog(@"is here");
. Как я уже сказал, иногда я получу половину сообщения. Может ли кто-нибудь сказать мне, где я ошибаюсь?