알고리즘/문자열 처리
[swift - algorithm] 문자열 파싱, split(separator:), components(separatedBy:), joined()
jake-kim
2021. 3. 13. 20:01
"문자열".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(separator:)
- 문자열 배열.joined(separator:): 문자열 배열을 결합할 때 separator (구분자)를 추가하여 결합하는 함수
["1", "234", "5"].joined(separator: " ") // "1 234 5"
활용 - 문자열에서 공백 삭제
extension String {
func removeWhitespaces() -> String {
return components(separatedBy: .whitespaces).joined()
}
}
"1 2345".removeWhitespaces() // "12345"
활용 - 문자열에서 콤마 삭제
extension String {
removeComma() -> String {
return components(separatedBy: ".").joined()
}
}
"1.2.3".removeComma() // "123"
활용 - 특정 문자열 삭제
extension String {
remove(target string: String) -> String {
return components(separatedBy: string).joined()
}
}
"12345".remove(target: "23") // "135"