2014-02-10 43 views
1

我试图做到这一点在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/来测试是否有效。我尝试了一些网站正则表达式和任何人为我工作。

+4

哪里是你的正则表达式? – Maroun

回答

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 
+0

它工作完美,谢谢。 – rokimoki

+0

@rokimoki当然,不客气 – PopoFibo