1️⃣ Character 배열 및 문자 합치기
하나의 문자를 넣고싶다면 Character 형을 다음과 같이 선언한다.
let mark : Character = "!" // 하나
배열에 넣고 싶다면 다음과 같다.
요소를 합치고 싶다면 string 으로 감싼다.
let word : [character] = ["c","a","t"] //배열
let fullstring = string(word)
print(fullstring)
//cat
2️⃣ 괄호 및 수식 값 계산 출력
괄호와 \를 그대로 출력하고 싶다면 따옴표 양 옆에 #을 붙인다.
print(#"Swift using \(multiplier)."#)
// "Swift using \(multiplier)." 이 출력됨
수식의 결과 값을 출력하고 싶으면 수식을 괄호로 감싼다음 #을 붙인다.
print(#"6 times 7 is \#(6 * 7)."#)
//6 times 7 is 42
3️⃣ 인덱스를 통한 문자열 접근
◼ 문자열의 처음과 끝
startIndex는 문자열이 시작하는 첫번째 문자를 반환한다.
let greeting = "Hello World!"
greeting[greeting.startIndex]
//H
endIndex는 String에 마지막 문자가 아닌 그 다음 위치를 반환한다
before를 통해 해당 인덱스 전 요소를 반환하고, after를 통해 해당 인덱스 다음 요소를 반환한다.
greeting[greeting.index(before: greeting.endIndex)]
//!
greeting[greeting.index(after: greeting.startsIndex)]
//e
◼ 특정 문자열 접근
특정한 위치의 문자열에 접근하고 싶으면 offsetBy를 사용한다.
let index = greeting.index(greeting.startIndex, offsetBy: 7)]
greeting[index]
// 시작 위치 : startIndex, 찾고 싶은 위치 : 7
// o
◼ 문자열에 있는 개별 문자 접근하여 출력하기
for index in greeting.indices {
print("\(greeting[index])", terminator: "")
}
//H e l l o w o r l d !
terminator: "" -> 옆으로 한칸씩 띄어쓰기 되면서 한줄에 출력
4️⃣ 문자열 삽입
◼ 하나 문자 삽입
var welcome = "hello"
welcome.insert("!", at:welcome.endIndex)
◼ 여러 요소 혹은 문자열 삽입
welcome.insert(contentsOf: "there", at : welcome.index(before : welcome.endIndex))
//"hello there!" 이 된다.
var numbers = [1,2,3,4,5]
numbers.insert(contentsOf: [1,2,3], at: 3)
print(numbers) // [1, 2, 3, 1, 2, 3, 4, 5]
5️⃣ 문자열 삭제
welcome.remove(at:welcome.index(before: welcome.endIndex))
// welcome은 !가 삭제되어 hello there이 된다.
◼ 특정 범위 문자열 삭제
removeSubrange 사용
let range = welcome.index(welcome.endIndex, offsetBy: -6) .. < welcome.endIndex
welcome.removeSubrange(range)
//welcome은 hello
◼ 부분문자열
firstIndex(of:) 는 배열에서 해당 값과 일치하는 요소의 가장 첫번째 index를 반환하고
lastIndex(of:) 는 해당 값과 일치하는 요소의 가장 마지막 index를 반환한다.
let greeting = "Hello, world!"
let index = greeting.firstIndex(of: ",") ?? greeting.endIndex
let beginning = greeting[..<index]
// beginning is "Hello"
// Convert the result to a String for long-term storage.
let newString = String(beginning)
firstIndex와 lastIndex에 대한 자세한 예시
var arr: [String] = ["a", "b", "c", "d", "b", "e]
if let firstIndex = arr.firstIndex(of: "b") {
print(firstIndex) // 1
}
if let lastIndex = arr.lastIndex(of: "b") {
print(lastIndex) // 4
}
'IOS > Swift' 카테고리의 다른 글
[Swift] 콜렉션(Collection) 타입(2) - 집합(Set) (0) | 2022.12.27 |
---|---|
[Swift] 콜렉션(Collection) 타입(1) - 배열(Array) (0) | 2022.12.27 |
[Swift] 기본 연산자(Basic Operators) (0) | 2022.12.22 |
[Swift] 기본 문법 (0) | 2022.12.22 |
[Swift] 상수(Constants)와 변수(Variables) (0) | 2022.12.21 |