Как вернуть строчку с конца до элемента '/'
например site.ru/page-1/image-1.jpg вернуть /image-1
А давайте будем думать не в терминах строк, а в терминах объектов, мы ж пишем на объектно-ориентированном языке? Ваш адрес должен быть в любом случае в объекте типа Uri
.
Uri uri = new Uri("http://site.ru/page-1/image-1.jpg");
string last = uri.Segments.Last(); // image-1.jpg
Если нужно ещё и откусить расширение, то
string lastWithoutExt = Path.GetFileNameWithoutExtension(last); // image-1
Если на входе у вас именно абсолютный Uri, нужнен именно последний сегмент, и нужно избежать случайных совпадений в query string, то:
var url = new Uri("http://site.ru/page-1/image-1.jpg");
Console.WriteLine("/" + url.Segments.Last()); // /image-1.jpg
Разница по сравнению с поиском последнего /
в обработке строк вот такого вида:
var url = new Uri("http://site.ru/page-1/image-1.jpg?some=a/b");
Console.WriteLine("/" + url.Segments.Last()); // все еще /image-1.jpg, а не /b
string s = @"site.ru/page-1/image-1.jpg";
int index = s.LastIndexOf(@"/");
string result =
(@"/" + System.IO.Path.ChangeExtension(s.Substring(index + 1), "")).Trim('.');
string a = "site.ru/page-1/pic.jpg";
string filename = a.Split('/')[2];
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Допустим, у нас есть строка в UTF-8Она должна занимать в памяти ровно 38 байт
Есть список объектов со следующей структурой(что-то вроде оповещений):
Как из метода GetValue() возвратить значение типа Nullable