iOS Swift(스위프트) : 문자와 문자열

기타|2020. 1. 3. 20:42
반응형

iOS 앱 개발을 위해 Swift(스위프트) 공부한 것을 메모한 글입니다.

 

유니코드 입력 : \u let char3 : Character = "\u{63}" //c let char4 : Character = "\u{2665}" //하트

 

문자열 생성

var str1 = "Hello, Swi" var str2 : String = "swift"

String Interpolation : \()

let str3 = "1 + 2 = \(1+2)" 3나옴 let str4 = "Hello, \(str2)" 변수를 넣으면 문자열로 됨

 

문자열 비교 : ==

let str = "Hello Swift"

if str == "Hello Swift" { print("같은 문자“) }

 

문자열 시작, 끝 비교

str.hasPrefix("Hello") str.hasSuffix("ground")

compare : 비교옵션, 범위, 로케일 - 비교 결과 : 오름차순, 같음, 내림차순

if helloStr1.compare(helloStr2) == .orderedAscending { print("오름차순“) }

 

문자열 정수 / 실수 변환

let numVal = Int('123') let doubleVar = Double("3.14")

변환 실패시 : nil 반환

문자열 내 위치 :String.Index

 

부분 문자열

첨자(Subscription) 접근 [ ]

부분 문자열 let subStr1 = str[from...to] / str.substring( : )

 

문자열 내 검색(range) : 파운데이션 프레임워크 필요

let range1 : Range<String.Index>? = str.range(of:"sw") 못찾으면 nil

let range2 = str.range(of:"sw", options:.caseInsensitive) 대소문자 구분해서 찾기

 

트리밍 : 양 끝 특정 문자 제거, 문자열 중간은 제거 안 함

 

공백 지우기 : spaceStr.trimmingCharacters(in: CharacterSet.whitespaces)

 

문자열 길이 : String.[View].count 문자 길이 : String.characters.count

let str = "Hellow Swift" str.characters.count // 11

 

유니코드 문자 포함 문자열 : let str2 = "I \u{2665} Swift" // I Swift

str2.characters.count //9 charactersutf8이나 utf16으로 바꾸면 다른 길이가 나옴

 

문자열 I/O

파일로 저장 / 읽기 : 예외 처리를 위한 try, do-catch

try str.write(toFile: filePath, atomically: true, encoding: String.Encoding.utf8)

 

파일에서 문자열 읽기

Initializer 형태 let str = try String(contentsOfFile: filePath)

 

 

 

관련 강좌

https://www.youtube.com/watch?v=_8LoENXbBaQ&list=PL9mhQYIlKEheAkAxX53qlTjjWK93Xd2pf&index=3

반응형