[swift] 문자열에서 숫자와 문자 분리하기
일반적으로 문자열에서 숫자와 문자를 분리하는 작업은 데이터 처리 및 텍스트 분석에 유용합니다. Swift에서는 문자열을 숫자와 문자로 분리하는데 다양한 방법이 있습니다. 이번 글에서는 그 중 몇 가지 방법을 살펴보겠습니다.
숫자와 문자 분리하기
문자열에서 숫자 추출하기
만약 주어진 문자열에서 숫자를 추출하고 싶다면, 정규 표현식을 사용하여 숫자 패턴을 찾아야 합니다. Swift에는 정규 표현식을 사용할 수 있는 NSRegularExpression
클래스가 있어서, 해당 클래스를 사용하여 숫자를 추출할 수 있습니다.
다음은 정규 표현식을 사용하여 문자열에서 숫자를 추출하는 예제입니다.
let inputString = "I have 2 apples and 3 oranges"
let pattern = #"\d+"#
let regex = try! NSRegularExpression(pattern: pattern, options: [])
let matches = regex.matches(in: inputString, options: [], range: NSRange(location: 0, length: inputString.utf16.count))
let numbers = matches.map {
(inputString as NSString).substring(with: $0.range)
}
print(numbers) // ["2", "3"]
문자열에서 문자 추출하기
만약 주어진 문자열에서 숫자가 아닌 문자를 추출하고 싶다면, 문자열을 순회하면서 숫자가 아닌 문자를 추출할 수 있습니다.
다음은 문자열을 순회하여 알파벳만 추출하는 예제입니다.
let inputString = "I have 2 apples and 3 oranges"
let letters = inputString.filter { "a"..."z" ~= $0.lowercased() }
print(letters) // "Ihaveapplesandoranges"
이렇게 하면 주어진 문자열에서 알파벳만 추출할 수 있습니다.
결론
위 예제들을 통해 Swift에서 문자열에서 숫자와 문자를 분리하는 방법을 살펴보았습니다. 이러한 방법을 응용하면 다양한 텍스트 데이터에서 원하는 정보를 추출할 수 있을 것입니다.