格式为:
19位后跟一个下划线后跟4位数字,后跟一个下划线,后跟一个数字,后跟一个下划线,后跟一个大写字母,后跟一个下划线,后跟4个数字,然后是一个破折号,接着是2位数字,接着是短划线,接着是2位数字,接着是下划线,接着是2位数字,接着是短划线,接着是2位数字,接着是短划线,接着是2位数字,以{{结尾1}}扩展
这里有一些文件名,因为我认为上面的信息很难阅读。 :) thanx提前给任何回答的人。
".db"
2408002705100010002_0002_0_V_2012-11-02_06-35-24.db
2408002705100010001_0001_0_V_2012-11-05_05-32-06.db
答案 0 :(得分:1)
\d{19}_\d{4}_\d_[A-Z]_\d{4}-\d{2}-\d{2}_\d{2}-\d{2}-\d{2}\.db
http://gskinner.com/RegExr/ - 一个测试您的RegEx的网站
但我注意到,例如,在中间你有_0002_
您接受任何4位数字或以“000”开头的数字吗?
答案 1 :(得分:0)
\d{19}_\d{4}_\d_[A-Z]_\d{4}-\d{2}-\d{2}_\d{2}-\d{2}-\d{2}\.db
这个也会对日期/时间部分进行基本检查(假设日期为YYYY-MM-DD):
\d{19}_\d{4}_\d_[A-Z]_\d{4}-(0(?!0)|1(?=[0-2]))\d-(0(?!0)|[1-2]|3(?=[0-1]))\d_([0-1]|2(?=[0-3]))\d(-[0-5]\d){2}\.db
基本检查表示您仍然可以插入日期,例如2月30日,但不是1月32日。
答案 2 :(得分:0)
根据您的数据:
\d{19}_0+\d_0_(V|E)?_(-?(\d{2}|\d{4}))+_(-?\d{2})+\.db
如果寻求更通用的话:
\d{19}_\d+_\d_[A-Z]?_\d{4}(-\d{2}){2}_(-?\d{2})+\.db
HTH
编辑:在旁注中,我宁愿将此字符串与_
分开,然后根据某些模式和/或属性单独验证每个部分。这样你就可以更好地控制这个字符串的外观。