如何修剪以下字符串?

时间:2011-06-03 13:54:16

标签: c#

我有字符串:"http://schemas.xmlsoap.org/ws/2004/09/transfer/Get"。我想从最后一个斜线修剪一切,所以我只留在"Get"

5 个答案:

答案 0 :(得分:9)

var s = "http://schemas.xmlsoap.org/ws/2004/09/transfer/Get";
s = s.Substring(s.LastIndexOf("/") + 1);

答案 1 :(得分:8)

您可以使用LastIndexOf方法获取字符串中最后一个/的位置,并将其传递给Substring方法,作为要剪掉字符串的字符数。这应该让你最后得到Get。

[TestMethod]
  public void ShouldResultInGet()
  {
     string url = "http://schemas.xmlsoap.org/ws/2004/09/transfer/Get";

     int indexOfLastSlash = url.LastIndexOf( '/' ) + 1; //don't want to include the last /

     Assert.AreEqual( "Get", url.Substring( indexOfLastSlash ) );
  }

答案 2 :(得分:3)

使用String.LastIndexOf获取最后的正斜杠

http://msdn.microsoft.com/en-us/library/ms224422.aspx

答案 3 :(得分:1)

如果您使用格式良好的/ Get / Put / Delete等

,则使用URI替代方法
var uri = new System.Uri("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get");
string top = Path.GetFileName(uri.LocalPath);

答案 4 :(得分:1)

尝试

int indexOfLastSlash = url.LastIndexOf( '/' ) + 1;

string s = url.Remove(0, indexOfLastSlash);

Assert.AreEqual( "Get", s );

这删除了之前的所有数据。包括最后一个'/'。

在这里工作正常。