React Native中的电子邮件验证

时间:2018-11-01 12:29:25

标签: jquery reactjs react-native

我在电子邮件验证中有条件。

  1. 如果电子邮件文本框为空。.返回true
  2. 如果电子邮件文本框不为空,请检查文本框是否为有效电子邮件
  3. 如果该电子邮件无效。.返回false

    isEmailValid = () => {
            const { Email} = this.state;
    
    var filter = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;
    
            if(Email=='') {        
                return true;        
            }
    
            else{                
                Alert.alert("Error", I18n.strings("requiredField", { name: I18n.strings("account.emailId") }));
                return false;        
            }
    
        return true;
    }
    

其他条件是什么? 谢谢

1 个答案:

答案 0 :(得分:2)

也许您可以尝试:

isEmailValid = () => {
     let email = this.state.email
     let pattern = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
     return pattern.test(String(email).toLowerCase())
}

希望我的回答有帮助!