我正在寻找一种方法来解析URL没有queryString使用正则表达式。
我有url像"http://abc.com/csd?/aaa/bbb"
期望的是"http://abc.com/csd"
谁来帮我一下
如果您只想要查询字符串之前的所有内容:
^[^?]+
Regex r = new Regex("(^[^?]+)");
Match m = r.Match("http://example.com/csd?/aaa/bbb");
// m.Groups[0].Value is your URL
您可以使用Substring
和IndexOf
var someString = "http://abc.com/csd?/aaa/bbb";
someString.Substring(0, someString.IndexOf('?') - 1);
虽然这并不完全符合您的问题中所述的要求,但它可能是一种更容易的方法-如果实际实现不需要RegEx。