拆分字符串(Uri的路径)基于"/"

SxC*_*hoc 15 c# asp.net query-string

不知道有人能指出我正确的方向.我想要实现的是分割一个基于它的字符串,其中包含一个'/'.例如,如果我在代码(c#)中有:www.site.com/course/123456/216,我希望能够在代码中拆分字符串,以便可以将123456分配给变量param1,将216分配给param2 (当然是页面的'友好'名称).如果我要在字符串上添加第三个'/',我希望它成为param3等等.

理想情况下,我希望能够将此代码放在某个地方,我可以将其包含在我需要它工作的任何用户控件中.

Ale*_*kov 24

Uri.Segments也许你在寻找:

new Uri("http://www.contoso.com/foo/bar/index.htm#search").Segments
Run Code Online (Sandbox Code Playgroud)

结果是 [ "/", "foo/", "bar/", "index.html" ]

  • 如果你总是要拆分/你可以使用段.就像`HttpContext.Current.Request.Url.Segments.Select(x => x.TrimEnd('/')).Skip(2).ToArray() (3认同)

Sme*_*egs 7

为什么不使用拆分?

var valueArray = "www.site.com/course/123456/216".Split('/');
Run Code Online (Sandbox Code Playgroud)

该数组将整个字符串分解

索引0将是"www.site.com"等等.