0
我有varius日志文件要读取。每个日志都包含设备(打印机)的报告。 我能找到的是始终单词“固件:”随后的固件版本,如:使用NSString找到匹配后的词
PTRE firmware: XER8673B2
日志似乎并不非常有序的,由此该文本的位置并不总是在同一个点或者在同一行上,但始终处于“PTRE firmawre:XXXXXXX”格式。 我如何找到XER8673B2?任何帮助表示赞赏。
解决(感谢@罗马sausarnes),这是代码:
NSString *stringToSearch = [[NSString alloc] initWithContentsOfFile:@"path/to/log" encoding:NSUTF8StringEncoding error:nil];
NSString *preMatchString = @"PTRE firmware: ";
NSString *terminatingCharacter = @" ";
NSString *result = [[NSString alloc] init];
NSScanner *scanner = [NSScanner scannerWithString:stringToSearch];
[scanner scanUpToString:preMatchString intoString:NULL];
[scanner scanString:preMatchString intoString:NULL];
[scanner scanUpToString:terminatingCharacter intoString:&result];
NSLog(@"It's : %@", result);
输出是
It's : XER8673B2
'NSRegularExpression'? – Larme 2014-11-09 05:05:00
对不起,我正在尝试你的建议,但我从来没有用过,可能还没有能够... – Mike97 2014-11-11 12:12:27