java - 如何从 String, Android/Java 获取多个子字符串

标签 java android regex string

我知道有类似的问题。然而,我尝试了很多解决方案,但它对我不起作用。

我需要帮助从一个字符串中提取多个子字符串:

String content = "Ben Conan General Manager 90010021 benconan@gmail.com";

注意:String中的内容不一定都是这种格式,可能都是乱七八糟的。

我想像下面这样提取电话号码和电子邮件:

<强>1。 90010021

<强>2。 benconan@gmail.com

在我的项目中,我试图获得这个结果,然后将其显示到 2 个不同的 EditText 中。 我试过使用模式和匹配器类,但没有用。

如果需要,我可以在这里提供我的代码,请帮助我~

--------------------编辑--------------------

以下是我目前的方法,只取出电子邮件地址:

private static final String EMAIL_PATTERN =
            "[a-zA-Z0-9\\+\\.\\_\\%\\-\\+]{1,256}" +
                        "\\@" +
                        "[a-zA-Z0-9][a-zA-Z0-9\\-]{0,64}" +
                        "(" +
                            "\\." +
                            "[a-zA-Z0-9][a-zA-Z0-9\\-]{0,25}" +
                        ")+";



public String EmailValidator(String email) {

        Pattern pattern = Pattern.compile(EMAIL_PATTERN);
        Matcher matcher = pattern.matcher(email);

        if (matcher.find()) {

            return email.substring(matcher.start(), matcher.end());

        } else {

            // TODO handle condition when input doesn't have an email address

        }

        return email;
    }

最佳答案

你可以像这样把你的字符串分成arraylist

    String str = "Ben Conan, General Manager, 90010021, benconan@gmail.com";
List<String> List = Arrays.asList(str.split(" "));

关于java - 如何从 String, Android/Java 获取多个子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35078007/

相关文章:

java - 使用 Shade-Plugin 正确最小化 Uber Jar

android - 安装Android Studio后,Gradle构建或清理不起作用

php - 如何获取未在逗号分隔字符串的第一个或最后一个索引但在 MySQL 中的字符串中间索引的值

android Kochava SDK 集成使应用程序与 google sdk 崩溃

android - Samsung Camera SDK是用来扩展Camera2 API的吗?

jquery - 使用 jQuery 或 RegEx 获取在样式表中写入的 CSS 值

java - 正则表达式,字符串到 float ,去掉其他字符

java - 文本文件正在从网上下载,但 ePub/Pdf 有问题

java - 如何使用Java从MySQL获取实时数据

java - 无法在java中关闭我的DataInputStream和DataOutputStream