用regex评估文件名

时间:2012-11-09 10:35:41

标签: c# regex

我有一些使用正则表达式来评估文件名的代码,这很好用,但我想添加out_\d\d\d\d\d\d_的2 nd 模式(然后最多150个字符)持有一个地址)。 显然我不想\d 150次,有人能告诉我最好的方法吗?

感谢

REGEX_PATTERN = @"out_\d\d\d\d\d\d";

if (!Regex.Match(Path.GetFileNameWithoutExtension(e.Name), REGEX_PATTERN).Success) {
  return;
}

2 个答案:

答案 0 :(得分:1)

试试这个:

REGEX_PATTERN = @"out_\d{1,150}";

OR

// For strict boundary match
REGEX_PATTERN = @"^out_\d{1,150}$";

答案 1 :(得分:1)

你想:

REGEX_PATTERN = @"^out_\d{6}(?:_.{1,150})?$";

这会分解为

`^`             - start of string
`out_\d{6}`     - `out_` followed by 6 digits
`(?:_.{1,50})?` - an optional string of _ followed by 1-150 characters
`$`             - end of string