环境 - SharePoint Workflow(.net tech)
尝试获取文件名的扩展名(有时是doc或docx或dwg或xlsx)。
我得到了这个\..+
或此\.[^\.]+$
来给我文件名。我需要另一个能给我扩展的表达式。我想我需要一个表达式来查找最后一段时间并给我字符串。
答案 0 :(得分:4)
使用Path.GetExtension(fileName)
而不是创建正则表达式 - 它在文件名中查找最后.
并返回带扩展名的子字符串。
更新:如果必须是正则表达式,请尝试\.[0-9a-z]+$
答案 1 :(得分:2)
这将是:
@"(?<=\.)([^\\/.]*)$"
这意味着:([^\\/.]*)
任何数字中的任何非点非路径字符,后跟字符串结尾$
。非点字符前面必须有一个不会被捕获的点(?<=\.)
。 (因此没有扩展名的文件名被捕获为具有空白扩展名)
请注意\
[]
的转义
一些有趣的测试用例:
C:\My.Path\Filename
C:\My.Path\Filename.ext
C:\My.Path\Filename.ext.ext2
..\Filename
..\Filename.ext
我要补充说Path.GetExtensions
是正确的工具来完成这项工作。