반응형
http://blog.naver.com/PostView.nhn?blogId=gboarder&logNo=90095665880
출처 : http://happydeveloper.springnote.com/pages/7609195]
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 18.0px; font: 12.0px AppleGothic; color: #785c25} p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 18.0px; font: 12.0px Helvetica; color: #785c25} p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 18.0px; font: 12.0px Helvetica; color: #785c25; min-height: 14.0px} p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 18.0px; font: 12.0px Helvetica; color: #721947; min-height: 14.0px} p.p5 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 18.0px; font: 12.0px AppleGothic; color: #721947} p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 18.0px; font: 12.0px Helvetica; color: #721947} span.s1 {font: 12.0px Helvetica} span.s2 {font: 12.0px AppleGothic}
//문자개수세기
NSLog (@"Length of str1 : %lu", [str1 length]);
//스트링복사하기
res = [NSString stringWithString : str1];
//스트링을다른스트링뒤에붙여복사하기
str2 = [str1 stringByAppendingString : str2];
//두개의스트링이같은지비교
if ([str1 isEqualToString : res] == YES)
//두개의스트링크기비교
NSComparisonResult compareResult;
compareResult = [str1 compare : str2];
if (compareResult == NSOrderedAscending) // str1 < str2
if (compareResult == NSOrderedSame) // str1 == str2
//대문자로변환
res = [str1 uppercaseString];
NSLog (@"Uppercase conversion : %s", [res UTF8String]);
//소문자로변환
res = [str1 lowercaseString];
NSLog (@"Lowercase conversion : %@",, res);
//스트링에서처음부터세번째까지문자추출하기
res = [str1 substringToIndex : 3];
NSLog (@"First 3 chars of str1 : %@", res);
//인덱스 5부터끝까지문자추출하기
res = [str1 substringFromIndex : 5];
//인덱스 8부터 13까지 (6개문자) 추출하기
res = [[str1 substringFromIndex : 8] substringToIndex : 6];
//동일한작업을쉽게하는방법
res = [str1 substringWithRange : NSMaskRange (8, 6)];
//스트링안에스트링찾기
NSRange subRange;
subRange = [str1 rangeOfString : @"string A"];
NSLog (@"String is at index %lu, length is %lu", subRange.location, subRange.length);
if (subRange.location == NSNotFound) NSLog(@"String not found");
//수정불가능한스트링으로부터수정가능한스트링만들기
NSMutableString *mstr;
mstr = [NSMutableString stringWithString : str1];
//문자집어넣기
[mstr insertString : @"mutable" atIndex : 7];
//맨뒤에넣는경우병합하기
[mstr insertString : @"and string B" atIndex : [mstr length]];
//혹은 appendString을 직접 사용
[mstr appendString : @"and string C"];
//범위로주어진서브스트링지우기
[mstr deleteCharactersInRange : NSMaskRange (16, 13)];
//스트링의범위찾아삭제하기
NSRange substr;
substr = [mstr rangeOfString : @"string B and "];
if (substr.location != NSNotFound)
[mstr deleteCharactersInRange : substr];
// 수정가능한스트링직접설정하기
[mstr setString : @"This is string A"];
//특정범위를다른스트링으로대체하기, 8번째부터 8개의문자를해당문자로대체.
//대체문자가길면스트링크기는늘어난다.
[mstr replaceCharactersInRange : NSMaskRange(8, 8) withString : @"a mutable string"];
//검색과대치
search = @"This is";
replace = @"An example of";
NSRange substr;
substr = [mstr rangeOfString : search];
if (substr.location != NSNotFound)
[mstr replaceCharactersInRange : substr withString : replace];
//모두찾아대치하기
search = @"a";
replace = @"X";
substr = [mstr rangeOfString : search];
while (substr.location != NSNotFound) {
[mstr replaceCharactersInRange : substr withString : replace];
substr = [mstr rangeOfString : search];
}
// 다른 방법 (전부 대치)
[mstr replaceOccurrencesOfString : search
withString : replace
options : nil
range : NSMaskRange (0, [mstr length])];
------------------------------------------------------------------------------------------------------------------------------------------------
#import <Foundation/NSString.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSAutoreleasePool.h>
int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSString *str = @"안녕하세요";
NSRange strRange; // 범위를 나타내는 NSRange 구조체
NSLog(@"%@", [str substringToIndex:3]); // 안녕하 (0번부터 2번까지)
NSLog(@"%@", [str substringFromIndex:3]); // 세요 (3번부터 끝까지)
NSLog(@"%@", [str substringWithRange:NSMakeRange(1,3)]);
// 녕하세 (1번부터 3개)
// NSMakeRange() 함수로부터 NSRange 구조체가 리턴된다.
NSLog(@"%@", [str substringWithRange:[str rangeOfString:@"녕하세"]]);
// str 문자열에서 "녕하세"를 찾으면 location과 length 값이 설정된
// NSRange 구조체가 리턴된다. 이는 바로 위에서 NSMakeRange(1,3) 함수가
// 리턴한 값과 동일하다.
NSLog(@"%@", [[str substringFromIndex:1] substringToIndex:3]);
// 이런 방법으로도 같은 값을 얻을 수 있다.
// 인덱스 번호 1번을 0으로 놓고 2번까지 얻는다.
strRange = [str rangeOfString:@"녕하세"];
NSLog(@"strRange.location=%lu strRange.length=%lu",
strRange.location, strRange.length); // 1, 3 (구조체 멤버 변수)
strRange = [str rangeOfString:@"짜장면"];
NSLog(@"%d", strRange.location); // -1, NSNotFound
[pool drain];
return 0;
}
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSString *str = @"홍길동"; // 수정 불가능한 문자열 객체 생성
NSString *immutaStr = [NSString stringWithString:str]; // 수정 불가능한 문자열 객체 생성 (깊은 복사)
NSMutableString *mutaStr = [NSMutableString stringWithString:str]; // 수정 가능한 문자열 객체 생성 (깊은 복사)
[mutaStr insertString:@" " atIndex:1]; // 1번에 삽입
NSLog(@"%@", mutaStr); // 홍 길동
[mutaStr appendString:@" 반갑습니다"]; // 맨 끝에 추가
NSLog(@"%@", mutaStr); // 홍 길동 반갑습니다
[mutaStr deleteCharactersInRange:NSMakeRange(1,3)]; // 1번부터 3개 삭제
NSLog(@"%@", mutaStr); // 홍 반갑습니다 //
[mutaStr deleteCharactersInRange:[mutaStr rangeOfString:@" 길동"]]; // 이렇게 하면 원하는 문자열을 찾아서 바로 삭제할 수 있다.
[mutaStr replaceCharactersInRange:NSMakeRange(0,1) withString:@"김"];
NSLog(@"%@", mutaStr); // 김 반갑습니다
[mutaStr setString:@"밥 먹으러 갑시다"];
NSLog(@"%@", mutaStr); // 밥 먹으러 갑시다
[pool drain]; return 0;
}
반응형
'Developer > IOS' 카테고리의 다른 글
view handle (0) | 2013.08.12 |
---|---|
카테고리 사용법 (0) | 2013.08.12 |
Tag를 이용한 delegate 에서의 분기문 (0) | 2013.08.01 |
sqlLite 처리 .. (0) | 2013.07.25 |
현재 스크린 사이즈 와 회전 상태 파악 (0) | 2013.07.24 |