#c# #regex #substring #string-matching
#c# #регулярное выражение #подстрока #сопоставление строк
Вопрос:
http://www.vkeong.com/2008/food-drink/nasi-lemak-wai-sik-kai-kepong-baru/
Привет, как получить 'nasi-lemak-wai-sik-kai-kepong-baru'
из этой гиперссылки, используя C #?
Спасибо.
Комментарии:
1. Это даст вам то, что вы хотите: результат строки = «наси-лемак-вай-сик-кай-кепонг-бару» : D
Ответ №1:
Как насчет;
var uri = new System.Uri("http://www.vkeong.com/2008/food-drink/nasi-lemak-wai-sik-kai-kepong-baru/");
string dir = new System.IO.FileInfo(uri.LocalPath).Directory.Name;
(Это вернуло бы результат, 2008
если бы не было завершения /
)
Ответ №2:
Используйте свойство Segments класса URI
URI uri = new URI("http://www.example.com/alpha/beta/gamma");
foreach(string s in uri.Segments)
{
Console.Writeline(s);
}
Комментарии:
1. Приятно! Это гораздо лучший ответ, чем мой. Не могли бы вы, пожалуйста, опубликовать какой-нибудь код для операции… Кажется, есть проблема с завершающим / хотя
Ответ №3:
Для этой конкретной строки я бы использовал String.Substring(int offset, int length)
метод.
url.Substring(38, 14);
Комментарии:
1. Возможно, вы правы, но именно так он сформулировал вопрос.
Ответ №4:
Обрежьте последнее /, затем найдите индекс теперь последнего / и создайте подстроку из этого найденного идентификатора до конца.