我正在尝试查找遵循“ char'h'后跟一个或多个数字”模式的文件,例如h0,h1,h22

但我也收到“ h22 cco”和hhh0

如何解决

files = new List<String>((from file in files where Regex.IsMatch(Path.GetFileNameWithoutExtension(file), "h\\d+", RegexOptions.IgnoreCase | RegexOptions.Singleline) select Path.GetFileNameWithoutExtension(file)));


问候

最佳答案

使用行的开头和结尾或字符串特殊字符^$,即:^h+\d+$

const string Pattern = @"^h+\d+$";


它将匹配字符串,该字符串在字符串开头包含一个或多个h,然后数字一个或多个重复。示例:h0h34hh5hhhh789

如果一开始只需要一个h,请使用此正则表达式:^h\d+$。它将匹配:h0h34h789323

关于c# - 正则表达式,IsMatch是否有所不同,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6725952/

10-17 01:18