正则表达式从字符串中获取字符串

时间:2014-01-26 14:43:19

标签: ios iphone objective-c regex

我的NSString包含此字符串:

c&&(b.signature=Rk(c));return ql(a,b)}

RK可以是任意两个字符。

我尝试使用(RegexKitLit)从字符串中获取RK

NSString *functionCode = [dataStr2 stringByMatching:@".signature=(.*?)\(" capture:1L];

functionCode总是nil。知道什么是错的吗?

1 个答案:

答案 0 :(得分:1)

不要为此使用正则表达式。如果字符串的格式始终相同,那么您只需执行以下操作:

NSString *dataStr2 = @"c&&(b.signature=Rk(c));return ql(a,b)}";
NSString *functionCode = [dataStr2 substringWithRange:NSMakeRange(16, 2)];

如果字符串不是那么固定,那么将其基于=的位置。

NSString *dataStr2 = @"c&&(b.signature=Rk(c));return ql(a,b)}";
NSRange equalRange = [dataStr2 rangeOfString:@"="];
NSString *functionCode = [dataStr2 substringWithRange:NSMakeRange(equalRange.location + equalRange.length, 2)];