我有一个字符串:
"http://schemas.xmlsoap.org/ws/2004/09/transfer/Get"
。我想从最后一个斜杠截取所有内容,只保留"Get"
。"http://schemas.xmlsoap.org/ws/2004/09/transfer/Get"
。我想从最后一个斜杠截取所有内容,只保留"Get"
。var s = "http://schemas.xmlsoap.org/ws/2004/09/transfer/Get";
s = s.Substring(s.LastIndexOf("/") + 1);
[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 ) );
}
如果您使用良好格式的 /Get /Put /Delete 等,则可以使用 URI 替代方案
var uri = new System.Uri("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get");
string top = Path.GetFileName(uri.LocalPath);
int indexOfLastSlash = url.LastIndexOf( '/' ) + 1;
string s = url.Remove(0, indexOfLastSlash);
Assert.AreEqual( "Get", s );
这将删除最后一个斜杠(/)及其之前的所有数据。
在这里运行良好。