iOS中使用正则表达式

1、下载RegexKitLite-4.0

 

2、将RegexKitLite.h和RegexKitLite.m加入到项目中

 

3、在项目的Frameworks中加入libicucore.A.dylib

 

int main(int argc, char *argv[]) {
	
	NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
	
	char *utf8CString = "test;;; test2 what are you doing, now?";
	NSString *regexString = @";";
	NSString *sourceString = [NSString stringWithUTF8String:utf8CString];	
	NSString *resultString = [sourceString stringByReplacingOccurrencesOfRegex:regexString withString:@"_"];
	
	NSLog(@"sourceString: \"%@\"", sourceString);
	NSLog(@"resultString: \"%@\"", resultString);	
	
	char *utf8CString1 = "Copyright \xC2\xA9 \xE2\x89\x85 2008";
	NSString *regexString1 = @"Copyright (.*) (\\d+)";	 
	NSString *sourceString1 = [NSString stringWithUTF8String:utf8CString1];
	NSString *resultString1 = [sourceString1 stringByMatching:regexString1 capture:1L];
	
	NSLog(@"sourceString: \"%@\"", sourceString1);
	NSLog(@"resultString: \"%@\"", resultString1);
	
	char *utf8CString2 = "One\t Two \tThree ";
	NSString *source = [NSString stringWithUTF8String:utf8CString2];
	NSString *result = [source stringByReplacingOccurrencesOfRegex:@"\\s+" withString:@" "];
	
	NSLog(source);
	NSLog(result);
	
	NSString *source1 = @"Test;12;Y";
	NSArray *columns = [source1 componentsSeparatedByRegex:@";\\s*"];
	
	NSLog([columns description]);
	
	NSString *source2 = @"<foo no=\"12\">Name</foo>";
	NSString *regex2 = @"<foo no=\"(.+?)\">(.*?)</foo>";
	int no = [[source2 stringByMatching:regex2 capture:1] intValue];
	NSString *data = [source2 stringByMatching:regex2 capture:2];
	
	NSLog(@"no: %d data: %@", no, data);
	
	[pool release];
	
	return 0;
}

 

你可能感兴趣的:(ios,正则表达式,iPhone,regex)