Develop
2014.05.12 16:43
[ios] URL 파라미터 파싱~
조회 수 3678 댓글 0
URL 파라미터 파싱하는..
URLParser.h
@interface URLParser : NSObject @property (nonatomic, retain) NSArray *variables; @property (nonatomic, retain) NSArray *keys; - (id)initWithURLString:(NSString *)url; - (NSString *)valueForVariable:(NSString *)varName; @end
URLParser.m
@implementation URLParser - (id) initWithURLString:(NSString *)url{ self = [super init]; if (self != nil) { NSString *string = url; NSScanner *scanner = [NSScanner scannerWithString:string]; [scanner setCharactersToBeSkipped: [NSCharacterSet characterSetWithCharactersInString:@"&?"]]; NSString *tempString; NSMutableArray *keys = [NSMutableArray new]; NSMutableArray *vars = [NSMutableArray new]; //ignore the beginning of the string and skip to the vars [scanner scanUpToString:@"?" intoString:nil]; while ([scanner scanUpToString:@"&" intoString:&tempString]) { [vars addObject:[tempString copy]]; [keys addObject: [[tempString componentsSeparatedByString:@"="] objectAtIndex:0]]; } self.variables = vars; self.keys = keys; } return self; } - (NSString *)valueForVariable:(NSString *)varName { for (NSString *var in self.variables) { if ([var length] > [varName length]+1 && [[var substringWithRange:NSMakeRange(0, [varName length]+1)] isEqualToString:[varName stringByAppendingString:@"="]]) { NSString *varValue = [var substringFromIndex:[varName length]+1]; return varValue; } } return nil; } - (void) dealloc{ self.variables = nil; self.keys = nil; } @end
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
285 | Develop | [ios] SQLite 사용하기(튜토리얼) + 샘플코드 | hooni | 2014.03.28 | 3703 |
» | Develop | [ios] URL 파라미터 파싱~ | hooni | 2014.05.12 | 3678 |
283 | Develop | [ios] UIWebView 캐쉬 삭제 | hooni | 2014.04.08 | 3668 |
282 | Develop | [ios] 유용한 매크로 | hooni | 2014.03.26 | 3656 |
281 | Develop | [ios] iOS에서 디바이스 종류 알아오기 | hooni | 2014.05.24 | 3652 |
280 | Etc | 영어. 불규칙 동사 정리 | hooni | 2017.10.04 | 3515 |
279 | Develop | [js] jQuery 셀 병합 1 | hooni | 2014.09.23 | 3494 |
278 | System/OS | [android] 초간단 HTTP, POST 전송 샘플 1 | hooni | 2017.02.16 | 3470 |
277 | Develop | [ios] 아이폰에서 진동(Vibrate) 기능 추가하기 | hooni | 2014.04.18 | 3464 |
276 | Database | [mysql] 중복데이터 삭제하는 초간단 쿼리 | hooni | 2017.11.22 | 3428 |
275 | Develop | [ios] NSString URL Encode/Decode (인코딩/디코딩) | hooni | 2014.05.02 | 3421 |
274 | Develop | [ios] Sprite Kit & 사운드 재생시 백그라운드 진입시 앱이 비정상적으로 종료됨 | hooni | 2014.04.18 | 3393 |