Develop
2014.05.12 16:43
[ios] URL 파라미터 파싱~
조회 수 3721 댓글 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
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
841 | Develop | [ios] 아이폰용 앱 오픈 소스들 | hooni | 2013.04.23 | 467842 |
840 | Develop | 자주 쓰는 Docker 명령어 alias | hooni | 2020.01.10 | 270480 |
839 | Develop | [ios] 언어, 지역, 국가 설정 가져오기 | hooni | 2014.05.12 | 270386 |
838 | Develop |
[ios] Start developing your navigation app for CarPlay without enrollment
![]() |
hooni | 2020.02.22 | 125076 |
837 | Develop |
[android] 만화 어플 소스코드
![]() |
hooni | 2013.04.23 | 92889 |
836 | Develop |
레고 마인드스톰 NXT 수도쿠, 큐브 소스코드..
20 ![]() |
hooni | 2013.04.23 | 81511 |
835 | Develop |
[c#] Hashtable <-> Json (dll 포함)
![]() |
hooni | 2013.04.23 | 80707 |
834 | Develop | [C#] MD5, SHA1 해시 & 인코딩 | hooni | 2013.04.23 | 77931 |
833 | Develop |
[android] 점심 해결 앱 소스 코드 ㅋㅋ
![]() |
hooni | 2013.04.23 | 76457 |
832 | Develop |
[json] 종결자 (설명과 웹, C/C++/C# 프로그램 샘플 코드)
![]() |
hooni | 2013.04.23 | 72016 |
831 | Develop | [android] keytool을 사용하여 키스토어 생성 | hooni | 2013.04.23 | 69557 |
830 | Develop | [ios] Random Thoughts: Rand() vs. arc4random() | hooni | 2013.10.31 | 68099 |