Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- Format the current string into the desired pattern.
- - Parameters:
- - mask: A format of the mask. e.g. "XXX-XXXX"
- - Returns: A result string after formatted.
- */
- func format(mask: String) -> String {
- let numbers = replacingOccurrences(of: "[^0-9]", with: "", options: .regularExpression)
- var result = ""
- var index = numbers.startIndex // numbers iterator
- // iterate over the mask characters until the iterator of numbers ends
- for ch in mask where index < numbers.endIndex {
- if ch == "X" {
- // mask requires a number in this place, so take the next one
- result.append(numbers[index])
- // move numbers iterator to the next index
- index = numbers.index(after: index)
- } else {
- result.append(ch) // just append a mask character
- }
- }
- return result
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement