使用 C# 中的正则表达式操作检查 EditText 上的有效电子邮件 [关闭]
Posted
技术标签:
【中文标题】使用 C# 中的正则表达式操作检查 EditText 上的有效电子邮件 [关闭]【英文标题】:check valid E-mail on EditText with regex operation like in C# [closed] 【发布时间】:2014-10-27 19:50:49 【问题描述】:你好,伙计们,Android 支持像 C# 这样的正则表达式操作,或者它以不同的名称存在,如果它是,你能告诉我它是什么,我想做的是做正则表达式操作来检查这是否是 EditText 上的有效电子邮件?
【问题讨论】:
实际上我正在为此做一些研究,但找不到任何东西,如果你能告诉我我需要搜索的关键字,我是新的 android 开发人员 有很多答案,所有答案都有效吗? 好吧,这个which explains why not to use regex. 解释说,如果电子邮件地址是 user@gmail.com.nospam 正则表达式操作失败,则符合 RFC的相同正则表达式> 你可以参考这个textbox email address validation或者这个which explains why not to use regex. Android: How can I validate EditText input?的可能重复 【参考方案1】: public boolean emailValidator(String email)
Pattern pattern;
Matcher matcher;
final String EMAIL_PATTERN = "^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]2,)$";
pattern = Pattern.compile(EMAIL_PATTERN);
matcher = pattern.matcher(email);
return matcher.matches();
试试这个。将需要验证的字符串传递给 emailValidator 函数
if(emailValidator(editText.toString()))
Log.d("Success", "yes");
【讨论】:
不匹配me@localhost
【参考方案2】:
Android 提供内置的电子邮件模式匹配器,因此请使用它 此代码仔细检查空白电子邮件和电子邮件验证:) 简短而甜蜜
public boolean isValidEmail(CharSequence strEmail)
return !TextUtils.isEmpty(strEmail) && android.util.Patterns.EMAIL_ADDRESS.matcher(strEmail).matches();
【讨论】:
以上是关于使用 C# 中的正则表达式操作检查 EditText 上的有效电子邮件 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
使用正则表达式从 C# 中的 SQL 语句中查找 SQL 函数