Форум программистов, компьютерный форум CyberForum.ru

Поиск в массиве - Objective-C

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Objective-C Изменение цвета иконок в UITabBar http://www.cyberforum.ru/objective-c/thread1161120.html
Есть в storybord tabbar и делегат в коде, я меняю программно фон и цвет иконок при нажатии, се ок. Но я не могу поменять цвет иконок, который стоит по умолчанию (остается всегда серый) хотя менял и значения tintColor и barTintColor. Как правильно менять цвета у иконок UITabBar ???
Objective-C AFNetworking Post Request Доброго времени суток. Возник вопрос. У меня есть сервер (phpMyAdmin, Mysql) есть приложение которое должно отсылать на этот сервер свои координаты в формате JSON делаю все это с помощью AFNetworking.Вот код: // инициальзация менеджера NSURL *baseURL = ; AFHTTPSessionManager *manager = initWithBaseURL:baseURL]; self.alias= .alias; //инициализируем обработчик ... http://www.cyberforum.ru/objective-c/thread1160761.html
Поэтапный план для овладения xCode или как вы начали свой путь программиста? Objective-C
Дорогие форумчане, Я недавно начал изучать язык программирования С++, но приостановил, так как позже узнал, что для Objective C больше подходит язык Си. Сейчас я изучаю Си (начальная стадия). Конечно же без цели было бы бессмысленно начинать что нибудь изучать. Моей целью является создание приложений и игр 2D для iOs. Я любитель эппл продукции. Сейчас у меня в планах после языка Си...
Objective-C Книги для изучения
Подскажите книги для изучения Objective желательно которые есть в бесплатном доступе
Objective-C Массив http://www.cyberforum.ru/objective-c/thread1158277.html
Помогите плз. есть множество условий "if", их примерно 100 + - 10,сразу могут выполняться до 20шт, в конце каждого получают результат "resultV"(стринговое значение которое зависит от того,какой "if" выполнился).мне надо чтобы они все добавились в один массив
Objective-C Как сохранять и выгружать данные из файловой системы Перелопатил кучу статей в гугле, но четкого понимания так и не появилось. Допустим, мне нужно в приложении загрузить картинку с сервера и сохранить ее в файловой системе, а при последующем запуске приложения проверить изменилась ли картинка на сервере и если изменилась, то загрузить новую. Подскажите что использовать и в каком направлении копать? И второй вопрос: Допустим, я закинул в... подробнее

Показать сообщение отдельно
noname_club
 Аватар для noname_club
102 / 90 / 9
Регистрация: 01.05.2013
Сообщений: 577
03.05.2014, 17:43     Поиск в массиве
есть массив "lines" полученный из файла
подробнее. Файл текстовый?

и стринг "resultText",пытаюсь найти в массиве получаемый стринг
дан массив

Objective-C
1
NSArray *k = @[ @"hello" , @"world" , @"tree", @"lemon" ];
определить индекс строки с со содержимым
Objective-C
1
2
3
4
5
6
7
8
9
10
int index = -1;
int i = 0;
for (NSString * kk in k) {
if ([kk isEqualToString: @"tree"]) {
   index = i;
   break;
}
i++;
}  // end for
NSLog(@"%d", index);
~~~~~~~~~~~~~~~~~~~~~
пример #2 определить номер символа вхождения строки в текстовую строку через регулярные выражения

модуль функций регулярный выражений, синтаксис индентичен php выражениям
Кликните здесь для просмотра всего текста

PHP_RegularExpression.h
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/**
 PHP_RegularExpression.h
 модуль php совместимых регулярных выражений
 */
 
 #import <Foundation/Foundation.h>
 
#ifndef _PHP_RegularExpression
#define _PHP_RegularExpression
 
#pragma mark Регулярные выражения
 
/*
 NSRegularExpressionCaseInsensitive             i
 NSRegularExpressionAllowCommentsAndWhitespace  c
 NSRegularExpressionIgnoreMetacharacters        m
 NSRegularExpressionDotMatchesLineSeparators    s
 NSRegularExpressionAnchorsMatchLines           l
 NSRegularExpressionUseUnixLineSeparators       x
 NSRegularExpressionUseUnicodeWordBoundaries    u
 
[url]http://developer.apple.com/library/ios/#documentation/Foundation/Reference/NSRegularExpression_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40009708-CH1-SW48[/url]
*/
 
NSRegularExpressionOptions php_preg_option_extract(NSMutableString* pattern);
 
NSString * php_preg_match (NSString * pattern, NSString* subject);
NSString * php_preg_replace(NSString* pattern ,NSString* replacement ,NSString* subject);
 
NSMutableArray * php_preg_match_all (NSString * pattern, NSString* subject);
NSMutableArray * php_preg_match_range (NSString * pattern, NSString* subject);
 
// -------------
 
#endif
PHP_RegularExpression.m
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
 /**
 
 PHP_RegularExpression.m
 
 модуль php совместимых регулярных выражений
 */
 
#pragma mark Регулярные выражения
 
NSRegularExpressionOptions php_preg_option_extract(NSMutableString* pattern) {
    NSString *s1 = [pattern substringToIndex:1];
    if ([s1 isEqualToString:@"#"]) {
        // обнаружены флаги
        for (int z=pattern.length-1; z>=1; z--) {
            if ([[pattern substringWithRange:NSMakeRange(z, 1)] isEqualToString:s1]) {
                // обнаружено
                // разбор флагов
                NSRegularExpressionOptions ret = 0;
                NSString *flags = [pattern substringWithRange:NSMakeRange(z+1, pattern.length-z-1)];
                for (int i=0; i<flags.length; i++) {
                    NSString *f = [flags substringWithRange:NSMakeRange(i, 1)];
                    if ([f isEqualToString:@"i"]) {
                        ret = (ret | NSRegularExpressionCaseInsensitive);
                        continue;
                    }
                    if ([f isEqualToString:@"s"]) {
                        ret = (ret | NSRegularExpressionDotMatchesLineSeparators);
                        continue;
                    }
                    if ([f isEqualToString:@"l"]) {
                        ret = (ret | NSRegularExpressionAnchorsMatchLines);
                        continue;
                    }
                    if ([f isEqualToString:@"u"]) {
                        ret = (ret | NSRegularExpressionUseUnicodeWordBoundaries);
                        continue;
                    }
                    if ([f isEqualToString:@"x"]) {
                        ret = (ret | NSRegularExpressionUseUnixLineSeparators);
                        continue;
                    }
                    if ([f isEqualToString:@"c"]) {
                        ret = (ret | NSRegularExpressionAllowCommentsAndWhitespace);
                        continue;
                    }
                    if ([f isEqualToString:@"m"]) {
                        ret = (ret | NSRegularExpressionIgnoreMetacharacters);
                        continue;
                    }
                }
                // сохраняем выражение
                [pattern setString:[pattern substringWithRange:NSMakeRange(1, z-1)]];
                return ret;
            } // end if
        } // end for
    } // end if
    return 0;
    
}
 
NSString * php_preg_match (NSString * pattern, NSString* subject) {
    if ([pattern length] ==0) { return nil; }
    if ([subject length] ==0) { return nil; }
    
    NSMutableString *pattern_ok = [NSMutableString stringWithString:pattern];
    NSRegularExpressionOptions opt = php_preg_option_extract(pattern_ok);
    
    NSRegularExpression *reg = [NSRegularExpression regularExpressionWithPattern:pattern_ok options:opt error:NULL];
    NSTextCheckingResult *res = [reg firstMatchInString:subject options:NSMatchingReportProgress range:NSMakeRange(0, subject.length)];
    
    if (res.range.length==0) {
        return nil;
    } else {
        return [subject substringWithRange:res.range];
    }
}
 
NSMutableArray * php_preg_match_all (NSString * pattern, NSString* subject) {
    if ([pattern length] ==0) { return nil; }
    if ([subject length] ==0) { return nil; }
    
    NSMutableString *pattern_ok = [NSMutableString stringWithString:pattern];
    NSRegularExpressionOptions opt = php_preg_option_extract(pattern_ok);
    
    NSRegularExpression *reg = [NSRegularExpression regularExpressionWithPattern:pattern_ok options:opt error:NULL];
    NSArray *res = [reg matchesInString:subject options:NSMatchingReportProgress range:NSMakeRange(0, subject.length)];
    //NSMatchingReportProgress range:NSMakeRange(0, subject.length)];
    NSMutableArray *res2 = [NSMutableArray new];
    
    for (id obj in res) {
        [res2 addObject: [subject substringWithRange:[obj range]]];
    }
    
    return res2;
}
 
NSMutableArray *php_preg_match_range (NSString * pattern, NSString* subject) {
    if ([pattern length] ==0) { return nil; }
    if ([subject length] ==0) { return nil; }
    
    NSMutableString *pattern_ok = [NSMutableString stringWithString:pattern];
    NSRegularExpressionOptions opt = php_preg_option_extract(pattern_ok);
    
    NSRegularExpression *reg = [NSRegularExpression regularExpressionWithPattern:pattern_ok options:opt error:NULL];
    NSArray *res = [reg matchesInString:subject options:NSMatchingReportProgress range:NSMakeRange(0, subject.length)];
    //NSMatchingReportProgress range:NSMakeRange(0, subject.length)];
    NSMutableArray *res2 = [NSMutableArray new];
    
    for (id obj in res) {
        [res2 addObject: [NSValue valueWithRange:[obj range]]];
    }
    
    return res2;
}
 
NSString * php_preg_replace(NSString* pattern ,NSString* replacement ,NSString* subject) {
    if ([pattern length] ==0) { return nil; }
    if ([subject length] ==0) { return nil; }
    
    NSMutableString *pattern_ok = [NSMutableString stringWithString:pattern];
    NSRegularExpressionOptions opt = php_preg_option_extract(pattern_ok);
    
    NSRegularExpression *reg = [NSRegularExpression regularExpressionWithPattern:pattern_ok options:opt error:NULL];
    
    return [reg stringByReplacingMatchesInString:subject options:NSMatchingReportProgress range:NSMakeRange(0, subject.length) withTemplate:replacement];
}
PHP_RegularExpression.zip



Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "PHP_RegularExpression.h"
 
// bla bla
 
-(void) mymethod {
 
 
NSString * text = @"hello world Tree lemon";
 
NSArray * result = php_preg_match_range ('#tree#i', text );
 
if ([result count] > 0) {
   NSRange r = [result[0] rangeValue];
   NSLog(@"найденный текст %d %@", r.location, [text substringWithRange: r]); 
}
 
} // <<
 
Текущее время: 02:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru