2014-12-01 2 views
1

это мой URL:экстракт слова из строки с несколькими разделителями

https://videodb.blob.core.windows.net/video/0c7f5ecf-22fc-4032-8ca1-17481f18aaa8_twitter.jpg

Теперь я хочу, чтобы принести твиттера из моего URL в моем запросе.

var userDetails = context 
     .UserDetails 
     .Where(x => x.Email == _userDetails.Email && x.Password == _userDetails.Password) 
     .Select(x => 
      new UserDetailsModel 
      { 
       Filename= x.Videourl 
      }); 

в моем имени файла Я хочу просто Имя файла вместо всего URL-адреса только в моем запросе.

как это сделать ??

+0

Что такое «контекст»? Что такое '_userDetails'? Что вы хотите сделать точно? – mihai

+0

Вы хотите '0c7f5ecf-22fc-4032-8ca1-17481f18aaa8_twitter.jpg'? – Arshad

+0

@Arshad: я просто хочу twitter –

ответ

2

Вы можете попробовать:

string url = "https://videodb.blob.core.windows.net/video/0c7f5ecf-22fc-4032-8ca1-17481f18aaa8_twitter.jpg"; 
string fileName = url.Substring(url.LastIndexOf('_') + 1); 

Это вернет вам twitter.jpg

Если вам нужно имя файла без расширения:

string fileNameWithoutExtention = System.IO.Path.GetFileNameWithoutExtension(fileName); 

Это даст вам twitter.

+0

Почему не 'var fileName =" twitter.jpg "' then ?! Если OP хочет твиттер, дайте 'em twitter :) – mihai

+0

, но что это, если имя выглядит так: 0c7f5ecf-22fc-4032-8ca1-17481_f18aaa8_twitter.jpg –

+0

'var' будет только строкой. – Arshad

0

Кроме того, что Аршад сделал, вы также можете это сделать.

string url = "https://videodb.blob.core.windows.net/video/0c7f5ecf-22fc-4032-8ca1-17481f18aaa8_twitter.jpg"; 
string[] delimitedString = url.Split('_'); 
string fileName = delimitedString[delimitedString.Length - 1].Split('.')[0]; 
+0

поблагодарить так много за ур. –

+0

Будет ли это работать, если имя файла 'abc.def.jpg' – Arshad

Смежные вопросы