NSRegularExpression
選択したテーブルビュー セルでアクションを実行したい。ただし、問題は、選択された単一のアイテムに対してアクションを実行する代わりに、配列全体をチェックし、Web サイトを除くすべてのアイテムで「はい」という回答を空白にすることです (別の「if」ステートメントのため)。
コードは次のとおりです。
NSArray *array = @"http://www.apple.com/, http://www.stackoverflow.com/, http://www.test.com/, This is text, 416-555-5555, 416-123-4567, This is also text.";
//more code
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSIndexPath* indexPath = [tableView indexPathForCell:sideSwipeCell];
NSError *error = NULL;
NSUInteger index = [buttons indexOfObject:button];
NSDictionary* buttonInfo = [buttonData objectAtIndex:index];
NSString *data = [[array objectAtIndex:indexPath.row] objectForKey:@"redirect_url"];
NSRegularExpression *naNum = [NSRegularExpression regularExpressionWithPattern:@"^\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$" options:NSRegularExpressionCaseInsensitive error:&error];
NSRange naNumMatch = [naNum rangeOfFirstMatchInString:data options:0 range:NSMakeRange(0, [data length])];
if ([data rangeOfString:@"http://"].location != NSNotFound) {
// do something.
} else if ((!NSEqualRanges(naNumMatch, NSMakeRange(NSNotFound, 0)))) {
// do something
} else {
// do something
}
}
これを修正するにはどうすればよいですか? 前もって感謝します。