-5

我需要通过正则表达式将文件列表中的文件名与数据库行匹配。

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

示例文件列表:

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

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

4

2 回答 2

-1

你可以使用这个正则表达式

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

或者

^0+\d+[.]\S+
于 2013-05-23T08:07:20.593 回答
-2

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

编辑:

既然你对你的-1很自由..

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

您似乎描述的问题是您的文件系统类型不佳,并且不必要地添加了 0,并且希望将 a 转换为(例如)4而不0004关心您拥有的文件扩展名。

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

享受你的 -6。

于 2013-05-23T07:41:16.340 回答