Czuję się trochę głupio publikując to, gdy wydaje się to dość proste i jest mnóstwo pytań dotyczących ciągów znaków / znaków / wyrażeń regularnych, ale nie mogłem znaleźć tego, czego potrzebowałem (z wyjątkiem innego języka: Usuń cały tekst po określonym punkcie ).
Mam następujący kod:
[Test]
public void stringManipulation()
{
String filename = "testpage.aspx";
String currentFullUrl = "http://localhost:2000/somefolder/myrep/test.aspx?q=qvalue";
String fullUrlWithoutQueryString = currentFullUrl.Replace("?.*", "");
String urlWithoutPageName = fullUrlWithoutQueryString.Remove(fullUrlWithoutQueryString.Length - filename.Length);
String expected = "http://localhost:2000/somefolder/myrep/";
String actual = urlWithoutPageName;
Assert.AreEqual(expected, actual);
}
Wypróbowałem rozwiązanie w powyższym pytaniu (mając nadzieję, że składnia będzie taka sama!), Ale nie. Chcę najpierw usunąć queryString, które może mieć dowolną zmienną długość, a następnie usunąć nazwę strony, która może mieć dowolną długość.
Jak mogę usunąć ciąg zapytania z pełnego adresu URL, tak aby ten test zakończył się pomyślnie?
/?