C#使用正则获取路径中的文件名
代码:
1 /// <summary> 2 /// 获取路径中最后一部分的名称(文件名或文件夹名)。 3 /// </summary> 4 /// <param name="path">文件路径或文件夹路径</param> 5 /// <returns></returns> 6 public static string GetLastPartNameOfPath(string path) 7 { 8 // 正则说明: 9 // [^/\\] :表示匹配除了斜杠(/)和反斜杠(\)以外的任意字符,双反斜杠用于转义 10 // + :表示匹配前面的表达式一次或多次 11 // [/\\] :表示匹配斜杠(/)或反斜杠(\) 12 // * :表示匹配零次或多次 13 // $ :表示从后向前匹配 14 15 // 截取最后一部分名称,名称的末尾可能带有多个斜杠(/)或反斜杠(\) 16 var pattern = @"[^/\\]+[/\\]*$"; 17 var match = System.Text.RegularExpressions.Regex.Match(path, pattern); 18 var name = match.Value; 19 20 // 截取名称中不带斜杠(/)或反斜杠(\)的部分 21 pattern = @"[^/\\]+"; 22 match = System.Text.RegularExpressions.Regex.Match(name, pattern); 23 name = match.Value; 24 25 return name; 26 }