正则表达式匹配日期模式

时间:2014-09-10 07:33:08

标签: c# regex datetime

我希望将文件名与日期格式和任意扩展名相匹配。 遵循正则表达式对此有好处:

[0-9]{2}.[0-9]{2}.[0-9]{4}(?:\..*)?

...

以上正则表达式,虽然似乎有效,但不归还 结果中的字符串:"12.1.1990.txt" 如何编写正则表达式,其中还包括

之类的日期
12.12.2203.bmp
or
1.11.2005.txt
or
12.1.2006.bin
?

感谢。和ps。在哪里可以找到有关写这些表达式的更多信息?

3 个答案:

答案 0 :(得分:2)

您可以使用此正则表达式:

^[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{4}(?:\..*)?$

RegEx Demo

答案 1 :(得分:0)

试试这个 -

[0-9]{2}.[0-9]**{1,2}**.[0-9]{4}(?:\..*)?

答案 2 :(得分:0)

我去寻找这个正则表达式:

\d{1,2}.\d{1,2}.\d{4}(?:\.\w*)?

另外,我使用一些在线正则表达式工具来检查我的正则表达式,这对于检查特定的东西非常方便(不是做广告或其他任何事情)。

通过本网站FileExt,文件扩展名中的DOS非法字符是这样的: |&lt;&gt; \ ^ =?/ []&#34 ;; *加控制字符,因此将文件扩展名正则表达式更改为: (?:\.[^\|\<\>\\\^\=\?\/\[\]\"\;\*\.]*)?将匹配有效的文件扩展名。

最终的正则表达式是:\d{1,2}.\d{1,2}.\d{4}(?:\.[^\|\<\>\\\^\=\?\/\[\]\"\;\*\.]*)?

<强> Regex101