首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从字符串中找到包含多个点(如1.2.3.4 )的数字序列?

如何从字符串中找到包含多个点(如1.2.3.4 )的数字序列?
EN

Stack Overflow用户
提问于 2018-06-18 06:10:28
回答 1查看 56关注 0票数 1

我希望使用Java中的RegX从包含它的字符串中找到包含多个点的数字序列,比如1.2.3.4.5。这种类型的数字系统被用于指标体系中。

例如。你好,世界12.12.12世界。从这个字符串中,我只想提取12.12.12。我在下面的代码中尝试过,但是如果字符串类似于abc4.2.4.24abc.,它不会给出输出。

代码语言:javascript
复制
    Pattern MY_PATTERN = Pattern.compile("^(?:[\\dx]{1,6}\\.){0,6}[\\dx]{1,6}$");

    Matcher m = MY_PATTERN.matcher("4.2.4.2.4");
    while (m.find())
    {
        String s = m.group(0);
        System.out.println(s);
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-18 07:17:16

模式字符串开头和结尾的^$要求匹配包含整个字符串。更准确地说,^匹配字符串的开头,$匹配结尾。当您的字符串是"abc4.2.4.24abc"时,数字和点的顺序既不会从字符串的开头开始,也不会在结束时结束,因此找不到匹配的。

只要删除^$,就可以在abc4.2.4.24abc中找到4.2.4.24

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50903511

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档