반응형
Swift의 문자열에서 분음 부호를 제거하는 방법은 무엇입니까?
String
Swift에서 a 에서 분음 부호 (또는 악센트)를 제거하는 방법 (예 : "één"을 "een"으로 변경)? NSString
Swift 로 돌아 가야 합니까 아니면 Swift 내에서 수행 할 수 있습니까?
Swift에서 직접 작업 할 수 있습니다 String
( "Foundation"을 가져온 경우) :
let foo = "één"
let bar = foo.stringByFoldingWithOptions(.DiacriticInsensitiveSearch, locale: NSLocale.currentLocale())
print(bar) // een
스위프트 3 :
let foo = "één"
let bar = foo.folding(options: .diacriticInsensitive, locale: .current)
print(bar) // een
@MartinR의 답변 업데이트… 누군가에게 유용 할 수있는 정렬 / 검색을위한 문자열을 제공 하는 Swift 3 확장…
extension String {
var forSorting: String {
let simple = folding(options: [.diacriticInsensitive, .widthInsensitive, .caseInsensitive], locale: nil)
let nonAlphaNumeric = CharacterSet.alphanumerics.inverted
return simple.components(separatedBy: nonAlphaNumeric).joined(separator: "")
}
}
예 :
print("Mÿ nâMe ís jÄço´B".forSorting) // "mynameisjacob"
참고 URL : https://stackoverflow.com/questions/29521951/how-to-remove-diacritics-from-a-string-in-swift
반응형
'Development Tip' 카테고리의 다른 글
Java에서 HashMap 키 및 값 반전 (0) | 2020.12.10 |
---|---|
어설 션이 함수가 아닌 매크로 인 이유는 무엇입니까? (0) | 2020.12.10 |
Swift로 프로그래밍 방식으로 로케일을 어떻게 변경할 수 있습니까? (0) | 2020.12.10 |
파일 또는 어셈블리 'Microsoft.Build.Framework'(VS 2017)를로드 할 수 없습니다. (0) | 2020.12.10 |
ArgumentNullException 던지기 (0) | 2020.12.10 |