string 연습

hankyulee·2021년 10월 10일
0

기타

목록 보기
8/19

내 코드:


func solution(_ phone_number:String) -> String {
    var result = String(repeating:"*",count:phone_number.count - 4)
    var four = phone_number[phone_number.index(phone_number.endIndex,offsetBy:-4)...phone_number.index(before:phone_number.endIndex)]
    return "\(result)\(four)"
}

위으 코드중에서,

phone_number[phone_number.index(phone_number.endIndex,offsetBy:-4)...phone_number.index(before:phone_number.endIndex)]

이 부분은 다음과 같이 쉽게 표현할 수 있다.

phone_number.suffix(4)

깨달은점:
1. prefix,suffix 를 통해 스트링 앞뒤 가져갈 수 있다.
2.

// var a = "123"
    // a = a.replacingOccurrences(of: "1", with: "3")//inline 아니다.

3

var a = phone_number.enumerated().map{
        $0.element
    }
    print(a)

phone_number가 string 이더라도 결과는 ["1",3"...] 로서 ARRAY로 출력된다는 사실. 따라서 다음과 같이 string()해줘야한다.

String(phone_number.enumerated().map{($0.offset<phone_number.count-4 ? Character("*") : $0.element)})

0개의 댓글