2011-01-20 40 views
3

什么是Java SimpleDateFormat模式的良好正则表达式?正则表达式适用于Java SimpleDateFormat模式(可能特定于出生)

故事:我用DateTimeFormatValue设置eclipse出生日期格式模式有问题,没有例外(仅反馈表单QA)。 所以,它的文档eclipse birt说他们支持SimpleDateFormat,因为我的应用程序中的模式是由用户未输入预定义的,所以我需要一些正则表达式检查..只检查正确的符号就够了。 ("^[y|M|m|h|G|z|s|d|(at)|(aaa)|E|\\.|\\:|\\'|\\/|\\,|\\ ]*$"

任何想法? 谢谢!

+0

难道你不必逃避反斜杠? – 2011-01-20 23:03:39

回答

1

如果可能的话,我会在一个正则表达式中解决这个问题。你应该拆分用户的输入。例如:YYYY.mm.DD拆分为[YYYY],[.],[mm],[.],[DD]。 现在你可以检查每个组,如果它对你的目的有效。 正如你所说的出生年份,你不会允许hh:mm.ss或一年中的其他日期等

这允许您给用户一个回应,例如:“年定义丢失”或“小时不允许” 。