带有前导零的正则表达式

时间:2013-05-23 07:34:24

标签: c# regex

我需要将文件列表中的文件名与Regex的数据库行匹配。

  • 文件名是带前导零的数字
  • 数据库值是不带前导零的数字

示例文件列表:

0001.jpg
0002.bmp
...
0012.bmp
0013.bmp
0014.jpg
...
1012.jpg
...    
1015.jpg
...

我使用C#。我需要将每个文件名与数据库中的每一行匹配。

2 个答案:

答案 0 :(得分:-1)

您可以使用此正则表达式

^0+\d+[.](jpg|bmp|jpeg|exe)

OR

^0+\d+[.]\S+

答案 1 :(得分:-2)

我有点不愿意回答,但为了匹配这些文件名(我认为你试图这样做),你应该尝试:\d{4}\.(jpg|bmp)

修改

因为你对你的-1是如此自由......

正则表达式并不是用于解决编码问题的正确技术,正则表达式用于查找与模式匹配的字符串。

您似乎要描述的问题是您的文件系统格式不正确,并且不必要地添加了0并希望将4转换为0004而不关心您的文件扩展名是什么有。

解决问题的“最佳解决方案”是修复文件的编号系统,或者只是在c#中添加前导0,而不是使用旨在完成不同操作的技术。

享受你的-6。