2012-08-01 2 views
0

я работаю над регулярными выражениями, но где бы я ищу Я ​​получаю код и объяснение для проверки электронной почты теперь я должен сделать что-то вроде этогоЧто касается регулярного выражения в iPhone

Содержания файла, как это (формат файлов может быть .rtf, .txt ... и т.д.)

форма этот файл теперь я хочу, чтобы извлечь languageC, Деннис Ритчи, эта книга хороша для изучения языка Си. Я достиг этого, используя NSStrings, NSScanner и NSRange, но теперь я хочу достичь этого, используя regularexpressions, это возможно.

+0

См [ 'NSRegularExpression'] (https://developer.apple.com/library/ios /#documentation/Foundation/Reference/NSRegularExpression_Class/Reference/Reference.html). И если вы google это или ищете здесь, я уверен, вопрос был задан и ответил много, много раз. Если вы попробуете его и у вас возникнут проблемы, покажите нам свой код, и мы будем рады помочь. – Rob

ответ

1
NSString *regexStr = @"\[Title:([.]+)\][ ]+\[Author:([.]+)\][ ]+\[Description:([.]+)\]"; 

NSError *error; 
NSRegularExpression *testRegex = [NSRegularExpression regularExpressionWithPattern:regexStr options:0 error:&error]; 

if(testRegex == nil) NSLog(@"Error making regex: %@", error); 

NSTextCheckingResult *result = [testRegex firstMatchInString:test options:0 range:NSMakeRange(0, [test length])]; 

NSRange range = [result rangeAtIndex:1]; // This will give you Title, 
+0

Thanx Я попробую этот мир кода ... –

0

Вы должны использовать регулярное выражение как это:

/\[[^:]+:([^]])\]/ 

Например:

NSError *error; 
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"\[[^:]+:([^]])\]" options:0 error:&error]; 
NSArray* matches = [regex matchesInString:YOUR_STR options:0 range:NSMakeRange(0, [YOUR_STRING length]); 
+0

Thanx Я попробую ... –

Смежные вопросы