如何从文本中提取.txt的文件名?

时间:2012-05-23 18:31:01

标签: linq c#-4.0

我有如下文字,

Lorem ipsum dolor sit amet,consectetur sample1.txt adipiscing elit。 Morbi nec urna non ante varius semper eget vitae ipsum。 Pellentesque居民 sample2.txt morbi tristique senectus et netus et malesuada fames。

我在上面的文本中有sample1.txt和sample2.txt。名称与sample1和sample2不同。我只需要使用c#获取文件名。

有人可以帮我吗?

3 个答案:

答案 0 :(得分:1)

因为你标记了LINQ:

var filesnames = text.Split(new char[] { }) // split on whitespace into words
                     .Where(word => word.EndsWith(".txt"));

答案 1 :(得分:0)

尝试这样的事情

var filesnames = text.Split(' ')
                 .Where(o => o.EndsWith(".txt")).Select(o => o.SubString(o.LastIndexOf('.'))).ToList();

答案 2 :(得分:-1)

如果有一种很好的方法可以捕获文件名的样子,那么可以使用正则表达式。我在这里假设它始终是blah.txt,带有字母数字字符:

var matches = Regex.Matches(input, @"\b[a-zA-Z0-9]+\.txt\b");