Mi sento un po 'stupido nel postare questo quando questo sembra un po' semplice e ci sono tonnellate di domande su stringhe / caratteri / regex, ma non sono riuscito a trovare esattamente ciò di cui avevo bisogno (tranne in un'altra lingua: Rimuovi tutto il testo dopo un determinato punto ).
Ho il seguente codice:
[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);
}
Ho provato la soluzione nella domanda sopra (sperando che la sintassi fosse la stessa!) Ma no. Voglio prima rimuovere queryString che potrebbe essere di qualsiasi lunghezza variabile, quindi rimuovere il nome della pagina, che potrebbe essere di nuovo di qualsiasi lunghezza.
Come posso ottenere la rimozione della stringa di query dall'URL completo in modo che questo test passi?
/
?