Ich habe diese Funktion in String Extension geschrieben und kann den Fehler nicht herausfinden.Call kann werfen, aber es ist nicht mit "versuchen" markiert und der Fehler wird nicht behandelt: NSRegularExpression
func isEmail() -> Bool {
let regex = NSRegularExpression(pattern: "^[A-Z0-9._%+-][email protected][A-Z0-9.-]+\\.[A-Z]{2,4}$", options: [.CaseInsensitive])
return regex.firstMatchInString(self, options: nil, range: NSMakeRange(0, characters.count)) != nil
}
Der Fehler ist:
Call can throw, but it is not marked with 'try' and the error is not handled
http://emailregex.com/ schlägt leicht unterschiedliche Muster - '[A-Z0-9a-z ._% + -] + @ [A-Za-Z0-9 .-] + \\ [A-Za-z] {2,6} speziell für Swift. Was denken Sie? – Michal
@Michal: Der obige Code verwendet die '. CaseInsensitive "-Option für die Groß- und Kleinschreibung, und Ihr Muster ermöglicht Groß- und Kleinbuchstaben. Das Ergebnis ist das gleiche. –
extra plus für den Hinweis auf den Emoji-Fall! – Kubba