检查文本是不是是android中的电子邮件地址[重复]

Posted

技术标签:

【中文标题】检查文本是不是是android中的电子邮件地址[重复]【英文标题】:Check if text is an Email address in android [duplicate]检查文本是否是android中的电子邮件地址[重复] 【发布时间】:2015-09-03 01:33:34 【问题描述】:

无论如何要检查我从网络服务获得的文本中是否是地址电子邮件?我收到长文本,需要检查电子邮件地址在哪里并使其可点击。 知道我该怎么做吗?

【问题讨论】:

这篇文章可能对你有所帮助:***.com/questions/6119722/… 这能回答你的问题吗? How to check edittext's text is email address or not? 【参考方案1】:

使用正则表达式解析电子邮件模式的文本 http://www.regular-expressions.info/email.html

\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]2,4\b

【讨论】:

从字符串中解析出文本后,OP 可以以任何他们认为合适的方式使用生成的地址。显然,要使某些东西“可点击”,它需要以 HTML 或其他类型的 UI 呈现给用户。在不了解环境的情况下,我无法建议显示该文本的策略。 问题被标记为“android” - 那是环境,因此我的评论。【参考方案2】:

这可能会有所帮助

public static boolean isValidEmailAddress(String email) 
        String ePattern = "^[a-zA-Z0-9.!#$%&'*+/=?^_`|~-]+@((\\[[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,))$";
        java.util.regex.Pattern p = java.util.regex.Pattern.compile(ePattern);
        java.util.regex.Matcher m = p.matcher(email);
        return m.matches();
    

【讨论】:

【参考方案3】:

要检查它是否是有效的电子邮件地址,有很多答案(包括这里的一些)。但要使其可点击,请使用Linkify

http://developer.android.com/reference/android/text/util/Linkify.html

一个例子/解释:

Does Linkify work for TextView in Android?

【讨论】:

以上是关于检查文本是不是是android中的电子邮件地址[重复]的主要内容,如果未能解决你的问题,请参考以下文章

检查电子邮件地址是不是存在

检查字符串是不是包含电子邮件地址?

Android检查Android中的null或空字符串

如何从 Android 中的 Vision OCR 结果文本中提取姓名、电话号码和电子邮件地址?

如何让我当前的 PHP 联系表单检查输入的电子邮件地址是不是有效? [复制]

如何检查 UITextField 的文本是不是是有效的电子邮件?