关于正则表达式的问题 Regex r = new Regex( "(?<FileName>[^\\/]+)\.[^\.\\/]+$" );Match m = r.Match( fileName );if ( m.Success ){ m.Groups[ "FileName" ].Value} 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 请OneDotRed(武装到眼神) 解释一下你的表达式的意思吧 (?<FileName>[^\\/]+)\.[^\.\\/]+$"限定符+表示匹配1个或多个(?<FileName>[^\\/]+)表示匹配1个或多个非/\的字符,\.匹配一个点号[^\.\\/]+$"[^\.\\/]+表示匹配大于1的非./\字符,$表示匹配字符串的尾段-----------------上面的匹配对于没有文件名的文件无效 楼上正解。看漏了。其实还可以改进:(?<FileName>[^\\/]+)(\.[^\.\\/]+)?$无扩展名也可匹配。 怎么去掉DataGridView中最后空白的一行? .cs 与 .resx的关系? “必须声明标量变量@a”的错误 C# picturebox 背景图片 一个关于控件很简单的问题 C#中怎样定义一个16进制的变量? 关于SQLDataReader的释放的问题 怎么用C#实现WORD文档的剥离? 问一个事件处理的问题... 继承类的对象还包括父类的对象? TcpListener用到一半关了,再发数据时有原本连上的TcpClient的程序死了,有无办法发现TcpListener已关显示提示。 大力宣传JavaScript经典之作,XMLMenu1.61,玩JS的不下载的绝对后悔。
限定符+表示匹配1个或多个
(?<FileName>[^\\/]+)表示匹配1个或多个非/\的字符,
\.匹配一个点号
[^\.\\/]+$"
[^\.\\/]+表示匹配大于1的非./\字符,
$表示匹配字符串的尾段
-----------------
上面的匹配对于没有文件名的文件无效