jaems jaems - 2 years ago 76
Swift Question

How to check if a textFieldView is empty or has no spaces?

textField.text != ""

These two functions regard spaces as characters. However, I would like my to recognise when the text field has no spaces or is not empty.

Answer Source

Just check if the trimmed string is empty

let isEmpty = str.stringByTrimmingCharactersInSet(.whitespaceAndNewlineCharacterSet()).isEmpty

You can even put it in an String extension:

extension String {
    var isReallyEmpty: Bool {
        return self.stringByTrimmingCharactersInSet(.whitespaceAndNewlineCharacterSet()).isEmpty

It even works for a string like var str = " ‚Äč " (that has spaces, tabs and zero-width spaces.

Then simply check textField.text?.isReallyEmpty ?? true.

If you wanna go even further (I wouldn't) add it to an UITextField extension:

extension UITextField {
    var isReallyEmpty: Bool {
        return text?.stringByTrimmingCharactersInSet(.whitespaceAndNewlineCharacterSet()).isEmpty ?? true

Your code becomes textField.isReallyEmpty.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download