Android 检测是否输入了手机号码或电子邮件
我有一个情况,用户将输入电子邮件或电话号码登录到应用程序,只有一个edittext提供,如在paytm 我需要检测输入的是电子邮件还是电话号码,以便正确设置服务器Android 检测是否输入了手机号码或电子邮件,android,Android,我有一个情况,用户将输入电子邮件或电话号码登录到应用程序,只有一个edittext提供,如在paytm 我需要检测输入的是电子邮件还是电话号码,以便正确设置服务器 如何检测用户输入的号码或电子邮件您可以做的一件事是检查它是否是电子邮件地址,然后检查它是否是有效的电话号码。我会像这样使用内置的Android功能: boolean isEmailValid(CharSequence email) { return Patterns.EMAIL_ADDRESS.matcher(email).ma
如何检测用户输入的号码或电子邮件您可以做的一件事是检查它是否是电子邮件地址,然后检查它是否是有效的电话号码。我会像这样使用内置的Android功能:
boolean isEmailValid(CharSequence email) {
return Patterns.EMAIL_ADDRESS.matcher(email).matches();
}
如果返回false,请检查它是否是有效的电话号码(Patterns.phone)
如果其中一个返回true,那么您就知道它是哪一个。如果两者都不为真,则为无效条目
有关和匹配的详细信息。一对正则表达式 电邮: 电话: 更简单的方法可能与您所想的完全相同:
@
字符-如果是,则假设它是电子邮件如果电子邮件的手机有效,您可以设置条件。如果它不包含
@
则是一个电话号码。但我认为更好的做法是在两个字段之间都显示“或”,并让用户决定是否要填写电话、电子邮件或两者。如果您使用android,请使用android方式:)这就是为什么我喜欢@wblaschko的答案