반응형
TextField나 Label에 휴대전화 번호를 표기해야 할때 000-0000-0000 방식으로 표기해야 할때가 있습니다.
여러가지 방법들이 있지만 정규표현식을 사용해서 처리 하는 방법은 다음과 같습니다.
extension String {
/// 휴대전화번호 문자열을 hyphen사용해서 변환
var formattedPhoneNumber: String {
let rexPattern = "([0-9]{3}([0-9*]{3,4})([0-9*]{4})"
guard let regex = try? NSRegularExpression(pattern: rexPattern, options: .caseInsensitive) else { return self }
let removedHyphen = replacingOccurrences(of: "-", with: "")
return rexgex.stringByReplacingMatches(in: removedHyphen, opptions: [], range: NSRange(removedHyphen.startIndex..., in: removedHyphen), withTemplete: "$1-$2-$3")
}
}
"01012345678".formattedPhoneNumber // "010-1234-5678"
"0101**45**".formattedPhoneNumber // "010-1**-45**"
반응형
'iOS > Tip' 카테고리의 다른 글
UITextField hyphen(-) 연속 입력시 en dash(–)로 변경되는것 막기 (0) | 2023.12.14 |
---|---|
SFSymbol의 Monochrome, Hierarchical, Palette, Multicolor Mode (1) | 2023.12.05 |
@AppStorage에 Date 타입과 Array 타입 사용하기 (0) | 2023.12.04 |
UIView -> UIImage (0) | 2023.11.15 |
iOS 16.4 이후부터 WebView 디버깅 하기 (0) | 2023.11.15 |
iOS App URL Cache 제거 (0) | 2023.11.10 |
iOS 16이상에서 TextKit 1을 사용하고자 할때 (0) | 2023.10.22 |
Application의 KeyWindow 구하기 (0) | 2023.10.15 |