2012-05-23 4 views
0

У меня есть текст, как показано ниже,Как извлечь имена файлов с .txt из текста?

Lorem Ipsum боль сидеть Амет, consectetur sample1.txt adipiscing Элит. Morbi nec urna non ante varius semper eget vitae ipsum. Pellentesque habitant sample2.txt morbi tristique senectus et netus et malesuada fames.

У меня есть sample1.txt и sample2.txt в приведенном выше тексте. Имя варьируется от sample1 и sample2. Мне просто нужно получить имя файла, используя C#.

Может ли кто-нибудь помочь мне в этом?

ответ

1

Поскольку вы помечать его LINQ:

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

Я всегда интерпретирован тег 'linq' Значить LINQ доступен, требуется не LINQ ; Это абсурдно. Как программист, единственная реальная важная задача - решить проблему эффективным и удобным образом. – mellamokb

+0

@mellamokb: Ну, это идеальное решение на обеих этих учетных записях. – jason

-1

Это может быть возможным с регулярным выражением, если есть хороший способ, чтобы захватить то, что ваши имена файлов будут выглядеть. Я предполагаю, что здесь всегда blah.txt с алфавитно-цифровых символов:

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

попробовать что-то вроде этого

var filesnames = text.Split(' ') 
       .Where(o => o.EndsWith(".txt")).Select(o => o.SubString(o.LastIndexOf('.'))).ToList(); 
Смежные вопросы