본문 바로가기

ALGORITHM/문자열

[Swift] 2941 크로아티아 알파벳 (replacingOccurrences 함수)

https://www.acmicpc.net/problem/2941

 

2941번: 크로아티아 알파벳

예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z=

www.acmicpc.net

 

replacingOccurrences() 함수를 사용하였습니다.

String 문서에는 없던 함수인데 NSString 에 존재하는 함수였습니다.

https://developer.apple.com/documentation/foundation/nsstring/1412937-replacingoccurrences

 

정의를 보면

func replacingOccurrences(of target: String, with replacement: String) -> String
Returns a new string in which all occurrences of a target string in a specified range of the string are replaced by another given string.

문자열의 지정된 범위 내에서 target String 을 모두 replacement String 으로 변환한다.

 

String 뿐만 아니라 NSString 도 함께 문서를 봐야한다는 것을 깨달았습니다.

둘의 차이점은 다음 기회에

 

전체코드

import Foundation

var word = readLine()!

let changeWord = ["c=", "c-", "dz=", "d-", "lj", "nj", "s=", "z="]

for w in changeWord {
    word = word.replacingOccurrences(of: w, with: ".")
}

print(word.count)