NSString
----------------------------------------------------------------------------
<Foundation 프레임워크에 포함된 class>
문자열을 다루는데 사용됩니다.
NSString *str = @"hello";
----------------------------------------------------------------------------
문자열 생성
+(id)stringWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2);
c언어의 printf()과 같이 인수를 이용해, 새로운
문자열을 만들어서 반환합니다.
NSString *str = [NSString stringWithFormat:
@"first var %d, second var %d", 1, 2];
----------------------------------------------------------------------------
글자수 검색
- (NSUInteger)length;
문자열의 문자수를 반환합니다.
유니코드 다국어 표준을 사용하여,
1byte 이상의 문자도 정상적으로 반환됩니다.
strlen()의 byte 계산 없이, 한글도 정상적으로 반환 됨.
NSUInteger length = [str length];
----------------------------------------------------------------------------
문자열 비교
- (BOOL)isEqualToString:
(NSString *)aString;
자신과 인수로 받은 문자열을 비교해서
YES, NO 를 반환합니다.
'==' 을 사용하면 문자열이 아니라,
객체의 포인터를 비교합니다.
NSString *str1 = @"first";
NSString *str2 =
[NSString stringWithFormat:@"%@",str1];
NSString *str3 = str1;
if ([str1 isEqualToString:str2]) {
NSLog(@"str1/str2 문자열 같음");
}
if (str1 != str2) {
NSLog(@"str1/str2 객체 다름");
}
if (str1 == str3) {
NSLog(@"str1/str3 객체 같음");
}
----------------------------------------------------------------------------
문자열 비교(대소문자 무시)
- (NSComparisonResult)compare:
(NSString *)string
options:(NSStringCompareOptions)mask;
파라미터에 or 연산자 사용가능함.
NSCaseInsensitiveSearch : 대소문자 무시
NSLiteralSearch : 대소문자 구분
NSNumericSearch : 숫자를 아스키값이 아니라,
실제 숫자로 처리
두 문자열이 같으면 NSOrderedSame을 반환.
NSString *str1 = @"first";
NSString *str2 = @"First";
if (![str1 isEqualToString:str2]) {
NSLog(@"str1/str2 문자열 다름");
}
if ([str1 compare:str2
options:NSCaseInsensitiveSearch]
== NSOrderedSame) {
NSLog(@"str1/str2 문자열 같음");
}
----------------------------------------------------------------------------
문자열 비교(포함)
- (BOOL)hasPrefix:(NSString *)aString;
문자열 앞부분과 인수 비교
- (BOOL)hasSuffix:(NSString *)aString;
문자열 끝부분과 인수 비교
- (NSRange)rangeOfString:(NSString *)aString;
문자열 전체에서 특정문자가 있는지 검색
(위에 compare에서 사용한 옵션 사용 가능)
찾으려는 문자열이 없으면 NSNotFound 반환
NSString *str1 = @"start nsstring search";
if ([str1 hasPrefix:@"sta"]) {
NSLog(@"sta로 시작함");
}
if ([str1 hasSuffix:@"search"]) {
NSLog(@"search로 끝남");
}
NSRange range;
range = [str1 rangeOfString:@"nsstring"];
if (range.location != NSNotFound) {
NSLog(@"문자열에 nsstring
포함되어 있음");
}
----------------------------------------------------------------------------
대소문자 변한
- (NSString *)uppercaseString;
- (NSString *)lowercaseString;
문자열에 포함된 모든 문자를 대문자/소문자로 변경합니다.
NSString *str = @"string";
str = [str uppercaseString];
NSLog(@"%@",str);
//str : "STRING"
str = [str lowercaseString];
NSLog(@"%@",str);
//str : "string"
----------------------------------------------------------------------------
형변환> NSString -> int, float, NSNumber…
NSString *numString = @"100";
int realNumber = [numString intValue];
int x = realNumber + 100;
NSLog(@"%d",x);
//x = 200
float로 쓸땐 [numString floatValue];
double은 [numString doubleValue];
. . .
www.devcel.co.kr
감사합니다 : http://underfree.tistory.com/entry/NSString-%EB%A9%94%EC%86%8C%EB%93%9C-%EB%AA%87%EA%B0%80%EC%A7%80
'□컴퓨터 관련 > ★iPhone Developer' 카테고리의 다른 글
Google AdMob (0) | 2011.01.21 |
---|---|
IPHONE 에서 국가 설정 값 및 언어 설정 값 가져 오는 법. (0) | 2011.01.21 |
iPhone 어플리케이션을 앱스토어에 배포하는 과정 (0) | 2011.01.17 |
NSString <-> NSData 상호 변환 (0) | 2010.12.20 |
UITextField X Button Insert (0) | 2010.12.14 |
뷰 컨트롤러(UIViewController)의 회전관련 메서드 (0) | 2010.12.13 |
FlowCover reload (0) | 2010.12.08 |