正则表达式C#:检查包含日期和下划线的文件名
我需要检查文件名的语法,以便处理它并排除与表达式不匹配的文件 文件名必须如下所示: (2个字符的字母或数字)\ uu(一些字符的字母和数字)\ uuu(YYYY-MM-dd-HH-SS-MM).csv 最后一部分是日期正则表达式C#:检查包含日期和下划线的文件名,c#,regex,C#,Regex,我需要检查文件名的语法,以便处理它并排除与表达式不匹配的文件 文件名必须如下所示: (2个字符的字母或数字)\ uu(一些字符的字母和数字)\ uuu(YYYY-MM-dd-HH-SS-MM).csv 最后一部分是日期 在中间我们有两个下划线 你能帮我解决这个问题吗?我对正则表达式一点也不熟悉,我做的一些测试也不好 非常感谢:)如果字符串仅包含文件名,则这是适合您请求的正则表达式 ^.{2}_.+__\d{4}(?:-\d{2}){5}.csv$ 例如,如果你想从一个较长的字符串中捕获它 (.
在中间我们有两个下划线 你能帮我解决这个问题吗?我对正则表达式一点也不熟悉,我做的一些测试也不好
非常感谢:)如果字符串仅包含文件名,则这是适合您请求的正则表达式
^.{2}_.+__\d{4}(?:-\d{2}){5}.csv$
例如,如果你想从一个较长的字符串中捕获它
(.{2}_.+__\d{4}(?:-\d{2}){5}.csv)
如果您在创建正则表达式时遇到困难,我可以推荐您看看。我已经创建了一些示例。请在下面找到它将为您工作,您也可以根据您的要求修改 例如:
(22)-(ww)-(aa).csv
^[(\[][a-zA-Z0-9]{2}[)\]]+(-[(\[][a-zA-Z0-9]{2}[)\]]+)+(-[(\[][a-zA-Z0-9]{2}[)\]]+.csv)$
^[(\[][a-zA-Z0-9]{2}[)\]]+(_[(\[][a-zA-Z0-9]{2}[)\]]+)+(_[(\[]([1-9]|([012][0-9])|(3[01]))-([0]{0,1}[1-9]|1[012])-\d\d\d\d [012]{0,1}[0-9]:[0-6][0-9][)\]]+.csv)$
^[(\[][a-zA-Z0-9]{2}[)\]]+(_[(\[][a-zA-Z0-9]{2}[)\]]+)+(_[(\[]19\d{2}(-|\/)((0[1-9])|(1[0-2]))(-|\/)((0[1-9])|([1-2][0-9])|(3[0-1]))(-)(([0-1][0-9])|(2[0-3]))-([0-5][0-9])-([0-5][0-9])[)\]]+.csv)$
例如:(22)uww)w01-12-2018 19:20.csv
^[(\[][a-zA-Z0-9]{2}[)\]]+(-[(\[][a-zA-Z0-9]{2}[)\]]+)+(-[(\[][a-zA-Z0-9]{2}[)\]]+.csv)$
^[(\[][a-zA-Z0-9]{2}[)\]]+(_[(\[][a-zA-Z0-9]{2}[)\]]+)+(_[(\[]([1-9]|([012][0-9])|(3[01]))-([0]{0,1}[1-9]|1[012])-\d\d\d\d [012]{0,1}[0-9]:[0-6][0-9][)\]]+.csv)$
^[(\[][a-zA-Z0-9]{2}[)\]]+(_[(\[][a-zA-Z0-9]{2}[)\]]+)+(_[(\[]19\d{2}(-|\/)((0[1-9])|(1[0-2]))(-|\/)((0[1-9])|([1-2][0-9])|(3[0-1]))(-)(([0-1][0-9])|(2[0-3]))-([0-5][0-9])-([0-5][0-9])[)\]]+.csv)$
例如:(22)uww)ww(1999-12-31-23-59-59)。csv
^[(\[][a-zA-Z0-9]{2}[)\]]+(-[(\[][a-zA-Z0-9]{2}[)\]]+)+(-[(\[][a-zA-Z0-9]{2}[)\]]+.csv)$
^[(\[][a-zA-Z0-9]{2}[)\]]+(_[(\[][a-zA-Z0-9]{2}[)\]]+)+(_[(\[]([1-9]|([012][0-9])|(3[01]))-([0]{0,1}[1-9]|1[012])-\d\d\d\d [012]{0,1}[0-9]:[0-6][0-9][)\]]+.csv)$
^[(\[][a-zA-Z0-9]{2}[)\]]+(_[(\[][a-zA-Z0-9]{2}[)\]]+)+(_[(\[]19\d{2}(-|\/)((0[1-9])|(1[0-2]))(-|\/)((0[1-9])|([1-2][0-9])|(3[0-1]))(-)(([0-1][0-9])|(2[0-3]))-([0-5][0-9])-([0-5][0-9])[)\]]+.csv)$
我建议你参考这个网址,它将有助于学习以及你可以找到更多的例子。谢谢到目前为止你都尝试了什么,你到底被困在哪里了?您已经尝试过任何模式吗?实际文件名中是否存在多个
(
和)
,或者它们仅用于说明不同的文件名部分?