일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- ios
- 리펙터링
- UICollectionView
- combine
- uitableview
- UITextView
- rxswift
- uiscrollview
- 애니메이션
- map
- RxCocoa
- HIG
- clean architecture
- 리펙토링
- collectionview
- Protocol
- tableView
- swiftUI
- swift documentation
- ribs
- MVVM
- 리팩토링
- Observable
- 클린 코드
- Refactoring
- SWIFT
- Xcode
- Human interface guide
- Clean Code
- 스위프트
- Today
- Total
목록알고리즘/문자열 처리 (5)
김종권의 iOS 앱 개발 알아가기
swift의 String 형 value type 특성 c, c++, java와는 다르게 string형에서 인덱스에 Int로 접근 불가 swift에서는 인덱스 값에 Int가 아닌 Index자료형이 위치 (swift는 Sring이 reference type이 아닌 value type이기 때문) let str = "1234" str[str.startIndex ..< str.endIndex] // 1234 Index값의 주의 사항: 위처럼 endIndex 값은 문자열 마지막이 아닌, 마지막 다음 문자열의 끝을 참조 String.Index 타입 Index타입이 따로 존재하며, 이것을 통해 문자열의 위치를 계산 String은 기본적으로 `self.startIndex`를 제공하므로 startIndex기준으로 떨어진 ..
"문자열".split(separator:) "12345".split(separator: "2") // ["1", "345"] "문자열".components(separatedBy:) separatedBy에 문자열을 넣고 실행하면, 문자열 중 separateBy에 속한 문자열을 제거한 배열로 반환 import Foundation "12345".components(separatedBy: "2") // ["1", "345"] ["문자열"].joined() 문자열 배열.joined(): 문자열 배열을 하나의 문자열로 만들어주는 함수 ["1", "234", "5"].joined() // "12345" // 동일 코드 ["1", "234", "5"].compactMap {$0} ["문자열"].joined(separa..
특정 문자열을 지정한 갯수만큼 추가하고 싶은 경우 for문을 쓰지 않고 스위프트 내장 함수 사용 String(repeating:count:) let strResult = String(repeating: "*", count: 5) print(strResult) // "*****"
특정 문자열에 해당하는 곳의 문자열 치환 replacingOccurrences(of:with:) 이용: self에서 of 문자열 부분을 with으로 변경 let sampleStr = "12345" let newStr = sampleStr.replacingOccurrences(of: "2", with: "vv") print(newStr) // 1vv345 Range값을 이용한 문자열 치환 replacingCharacters(in:with:) 이용: self에서 in 범위 부분을 with으로 변경 NSRange 개념: location, length 정보 가지고 있는 구조체 Range 개념: lowerBound, upperBound정보를 가지고 있는 구조체 range값을 가지고 문자열을 치환하는 예제) - t..
1. Date객체 초기화 1) init() 현재 시간 let d = Date() print(d) // print : 2020-05-23 08:57:33 +0000 2) init(timeIntervalSinceNow:) * timeIntervalSinceNow은 Double형 현재 시각으로 부터 입력한 초 이후의 시점 let tomorrow = Date(timeIntervalSinceNow:60*60*24) // 다음날 print(tomorrow) // print : 2020-05-23 21:00:18 +0000 3) init(timeInterval:since:) 다른 Date()객체로부터 입력한 초 이후의 시점 2. DateFormatter - 날짜 및 시간에 대한 포멧화 하는 객체 1) 객체 생성 le..