remove \\u{e2} characters from string

2020-03-30 07:25发布

I copied mobile number from contact . I got it like "8008708600\u{e2}" . I wish to remove \u{e2} from string. String is copied with exponent character which I dont want.

Ex: "8008708600\u{e2}" so desired output is 8008708600

I used following code

let formattedString = string.replacingOccurrences(of: " \\u{e2}”, with: "")

Any help would be greatly appreciated, thanks so much!

3条回答
不美不萌又怎样
2楼-- · 2020-03-30 08:02

Code:

var number = self.yourTextField.text

self.yourTextField.text = ""
let onlyDigits: CharacterSet = CharacterSet.decimalDigits.inverted
let greeting = number!
number = ""
for aa in 0..<greeting.count {
    let index = greeting.index(greeting.startIndex, offsetBy: aa)

    let bb = String(describing: greeting[index])

    if bb.rangeOfCharacter(from: onlyDigits) == nil {
        number = "\(String(describing: number!))\(greeting[index])"
    }
}

self.yourTextField.text = number!
查看更多
在下西门庆
3楼-- · 2020-03-30 08:04

I have used following Code:

 var str = "8008708600\u{e2}"
 str = str.replacingOccurrences(of: "\u{e2}", with: "")
 print(str)

Output:

enter image description here

Hope this helps.

查看更多
我欲成王,谁敢阻挡
4楼-- · 2020-03-30 08:10

I made a function for help:

public func formatContactsPhoneNumber(number: String) -> String {
    var buffer = ""
    for (i, char) in number.unicodeScalars.enumerated() {
        guard CharacterSet.decimalDigits.contains(char) else {
            continue
        }
        buffer.append(number[i])
    }
    return buffer
}

It's work well for me.

查看更多
登录 后发表回答