我希望将文件名与日期格式和任意扩展名相匹配。 遵循正则表达式对此有好处:
[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。在哪里可以找到有关写这些表达式的更多信息?
答案 0 :(得分:2)
答案 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非法字符是这样的:
|<> \ ^ =?/ []&#34 ;; *加控制字符,因此将文件扩展名正则表达式更改为:
(?:\.[^\|\<\>\\\^\=\?\/\[\]\"\;\*\.]*)?
将匹配有效的文件扩展名。
最终的正则表达式是:\d{1,2}.\d{1,2}.\d{4}(?:\.[^\|\<\>\\\^\=\?\/\[\]\"\;\*\.]*)?
<强> Regex101 强>