在随机字符串中匹配日期与正则表达式

时间:2014-02-10 12:50:08

标签: java regex string date

我想在Java中执行此操作:

我收到这种字符串

"12/07/2004dddsss12/10/2010ñrrñrñr10/01/2000ksdifjsdifffffdd04/04/1998"

然后我必须在该字符串中找到一个或多个日期,日期格式为:dd/mm/yyyy

最后,我必须复制到匹配的另一个字符串日期:"12/07/2004 12/10/2010 10/01/2000 04/04/1998"

PD:我正在使用这个网站http://regexpal.com/来测试是否有效。我尝试了一些网站正则表达式,任何人都为我工作。

1 个答案:

答案 0 :(得分:1)

您可以将日期的有效性与提取的内容分开。

提取日期:

String regex = "\\d{2}/\\d{2}/\\d{4}";

在这里查看小提琴:http://fiddle.re/fa0bf

代码:

 String input = "12/07/2004dddsss12/10/2010ñrrñrñr10/01/2000ksdifjsdifffffdd04/04/1998";
    String regex = "\\d{2}/\\d{2}/\\d{4}";
    Pattern pattern = Pattern.compile(regex);

    Matcher matcher = pattern.matcher(input);
    while (matcher.find()) {
        System.out.println(matcher.group());
    }

给出,

12/07/2004
12/10/2010
10/01/2000
04/04/1998