所以我有一个字符串来自OCR库,如下所示:
ALLee;YIeiqm Y E JOHNSON-TEST g jammima g 02345678 8;;Y_(____. g GHJ- 444 4333333333 * BAKERY -- Scones p ii
我想搜索此字符串并找到“02345678”部分。这个字符串可以是任何字符串,但它总是8个字符长,并且所有字符都在一起。如何搜索字符串以查找第一次出现的8个字符的字符串,其中的空格或字符不在A到Z和0到9的范围内?
谢谢!
亚当
答案 0 :(得分:7)
NSString *yourString = @"ALLee;YIeiqm Y E JOHNSON-TEST g jammima g 02345678 8;;Y_(____. g GHJ- 444 4333333333 * BAKERY -- Scones p ii";
NSRegularExpression *regex = [NSRegularExpression
regularExpressionWithPattern:@"[A-Za-z0-9]{8}"
options:NSRegularExpressionCaseInsensitive
error:&error];
[regex enumerateMatchesInString:yourString options:0 range:NSMakeRange(0, [yourString length]) usingBlock:^(NSTextCheckingResult *match, NSMatchingFlags flags, BOOL *stop){
// your code to handle matches here
}];
(代码无耻地从这个SO answer中删除。)