Java:如何从字符串中提取日期

Java:如何从字符串中提取日期,java,regex,groovy,Java,Regex,Groovy,我正在构建groovy测试,并在属性中具有字符串: date = new Date("09/15/2016") 需要提取日期如下的字符串部分: y=09/15/2016 我尝试了substring方法,但如果我想使用正则表达式或DateFormat之类的其他方法,该怎么办 这将起作用: Date date = new Date("09/15/2016"); String strDate = new SimpleDateFormat("MM/dd/yy").fo

我正在构建groovy测试,并在属性中具有
字符串

date = new Date("09/15/2016")
需要提取日期如下的
字符串
部分:

y=09/15/2016
我尝试了
substring
方法,但如果我想使用正则表达式或DateFormat之类的其他方法,该怎么办

这将起作用:

        Date date = new Date("09/15/2016");
        String strDate = new SimpleDateFormat("MM/dd/yy").format(date);
        System.out.println(strDate);

在标记此groovy之后,还可以执行以下操作:

Date date = Date.parse("MM/dd/yyyy", "09/15/2016")
更新: 好吧…奇怪。。。我不明白你实际上把
新日期(废话)
作为一个字符串

这样应该可以了,我想您确实需要一个regexp;-)


可能重复的请分享您到目前为止尝试过的内容和不起作用的内容。不要使用正则表达式,有用于此的工具…不,问题是,最初Properties变量会获得完整字符串,如“new Date('09/15/2016')”。所以我需要解析这个字符串以获得子字符串09/15/2016'@OlegVetrov更新了我的答案。。。奇怪的属性文件。。。谁干的?非常感谢你,朋友!事实上,在Jenkins开始自动测试之前,脚本会设置这些属性。我们需要它来更改应用程序中的当前日期。@OlegVetrov不用担心,如果它解决了您的问题,您可以单击此答案旁边的勾号:-)祝您好运!
String weirdDateString = 'new Date("09/15/2016")'

String extractedDate = weirdDateString.find(/[0-9\/]+/)

Date date = Date.parse('MM/dd/yyyy', extractedDate)