Используйте replacingOccurrences
с параметрами:
let str = "abcdba"
let result = str.replacingOccurrences(of: "[^ab]", with: "", options: .regularExpression)
print(result) //"abba"
Или вы можете определить функцию следующим образом:
func maskString (
_ str: String,
withMask mask: String ,
replaceWith replacement: String = ""
) -> String {
return str
.replacingOccurrences(of: "[^\(mask)]",
with: replacement,
options: .regularExpression)
}
И используйте это так:
maskString("abcdba", withMask: "ab") //"abba"
maskString("abcdba", withMask: "ab" , replaceWith: "?") //"ab??ba"