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

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

【问题讨论】:

标签: android


【解决方案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?

    【讨论】:

      猜你喜欢
      • 2011-08-17
      • 2016-04-06
      • 2011-09-01
      • 2011-03-09
      • 2013-07-15
      • 2016-08-20
      • 2012-09-09
      • 2011-06-08
      • 2011-10-25
      相关资源
      最近更新 更多