SORU
18 NİSAN 2010, Pazar


Dize içinde belirli bir karakterden sonra karakterleri kaldırmak, alt kaldırın o zaman?

Hissediyorum salakça gönderme bu gibi görünüyor zaman bu tür basit ve ton soru ipler/karakter/normal ifade, ama bulamadım ve çok ihtiyacım olan şey. (hariç başka bir dil: http://stackoverflow.com/questions/2176544/remove-all-text-after-certain-point).

Aşağıdaki kodu var:

[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);
    }

Soru yukarıda (sözdizimi aynı olacağını umuyorum!) çözüm denedim ama hayır. İlk herhangi bir değişken uzunlukta olabilir sorgu dizesi kaldırmak, bir daha herhangi bir uzunlukta olabilir hangi sayfa adı, sonra kaldırmak istiyorum.

Nasıl bu testi geçer gibi tam URL sorgu dizesi kaldırmak alabilir miyim?

CEVAP
18 NİSAN 2010, Pazar


Eğer sana her şeyi sonra öldürmek istiyorsan ? dize manipülasyon,, bunu yapabilirsiniz

string input = "http://www.somesite.com/somepage.aspx?whatever";
int index = input.IndexOf("?");
if (index > 0)
   input = input.Substring(0, index);

Son bölü sonra her şey, gibi bir şey . Edit:

string input = "http://www.somesite.com/somepage.aspx?whatever";
int index = input.LastIndexOf("/");
if (index > 0)
    input = input.Substring(0, index); // or index   1 to keep slash

Bir URL ile çalışmaya başladığından beri dönüşümlü olarak, bu kod gibi bir şey yapabilirsin

System.Uri uri = new Uri("http://www.somesite.com/what/test.aspx?hello=1");
string fixedUri = uri.AbsoluteUri.Replace(uri.Query, string.Empty);

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bethliebert

    bethliebert

    23 EKİM 2008
  • boogie2988

    boogie2988

    6 NİSAN 2006
  • Jucyber Tutoriais

    Jucyber Tuto

    8 EYLÜL 2009