[Swift] String - #3 String.Index
String.Index
- Swift의 String은 String.Index타입을 사용해서 String을 구성하는 Character 위치를 나타낸다.
- Character가 유니코드 스칼라 여러 개로도 구성될 수 있기 때문에 단순히 정수형 값으로 인덱스를 구할 수 없다.
- startIndex는 문자열의 처음과 끝의 위치를 나타낸다. endIndex는 마지막 문자 뒤의 위치를 나타내기 때문에 subscript에 endIndex를 사용하면 안 된다.
- index(before:), index(after:) 함수를 사용하여 인덱스의 앞, 뒤 문자를 접근할 수 있다.
- index(_:offsetBy:) 함수를 사용해서 주어진 인덱스로부터 offset 만큼 떨어진 문자를 접근할 수 있다.
삽입
- insert(_:at:)을 사용해서 하나의 Character를 원하는 위치에 삽입할 수 있다.
- insert(contentsOf:at:) 함수를 사용해서 문자열을 원하는 위치에 삽입할 수 있다.
- insert(_:at:) : startIndex 예제
- insert(_:at:) endIndex 예제
- insert(contentsOf:at:) 예제
삭제
- remove(at:)을 사용해서 특정 위치의 문자를 삭제할 수 있다.
- removeSubrange(_:)를 사용하여 특정 range의 문자를 삭제할 수 있다.
- remove(at:), removeSubrange(_:) 예제
참고 문서
https://developer.apple.com/documentation/swift/string
https://docs.swift.org/swift-book/LanguageGuide/StringsAndCharacters.html#