Удалять пробелы из конца текстового поля в Swift - PullRequest
0 голосов
/ 11 марта 2020

У меня есть электронное письмо textfield, которое приходит при регистрации пользователя. Если я добавлю пробел в конце email, я не смогу зарегистрировать пользователя. Как я могу удалить место в конце? Например: abc@gmail.com+space это место должно быть удалено.

Ответы [ 3 ]

0 голосов
/ 11 марта 2020
let verifiedEmailString = emailString.replacingOccurencesOf(of:" ", with: "")

ОБНОВЛЕНИЕ:

Реализация метода делегата UITextFields следующим образом:

func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
    let cs = Character(" ")
    let filtered = string.components(separatedBy: cs).joined(separator: "")

    return (string == filtered)
}
0 голосов
/ 11 марта 2020

Используйте этот общий метод в вашем классе помощников:

Описание:

func trimWhiteSpace(str: String) -> String {
 let trimmedString = str.trimmingCharacters(in: NSCharacterSet.whitespaces)
 return trimmedString
}

Использование:

let string = trimWhiteSpaceNew(str: textfield.text)
0 голосов
/ 11 марта 2020

Сделайте так:

email.text! = email.text!.replacingOccurencesOf(" ", withString: "")

или:

let string = textField.text?.trimmingCharacters(in: .whitespaces)

или:

func textField(textField: UITextField!, shouldChangeCharactersInRange range: NSRange, replacementString string: String!) -> Bool {
       if range.location == 0 && string == " " {
           return false
       }
       return true
 }
...