C# 删除htm之后的剩余url?

C# 删除htm之后的剩余url?,c#,url,C#,Url,我需要删除从/deposit/jingdongpay.htm?bid=4089开始的url路径 “?”我只需要/deposit/jingdongpay.htm。 这意味着url将删除.htm之后的任何内容 你知道怎么做吗。在Python中,你可以使用str.split(): 您可以使用String.Split方法: string url = "/deposit/jingdongpay.htm?bid=4089"; string result = url.Split('?')[0]; 另一种方

我需要删除从
/deposit/jingdongpay.htm?bid=4089开始的url路径
“?”我只需要
/deposit/jingdongpay.htm
。 这意味着url将删除.htm之后的任何内容
你知道怎么做吗。

在Python中,你可以使用
str.split()


您可以使用
String.Split
方法:

string url = "/deposit/jingdongpay.htm?bid=4089";
string result = url.Split('?')[0]; 
另一种方法是使用
String.Substring

string result = url.Substring(0, url.IndexOf('?'));
或者,如果您对LINQ解决方案感兴趣:

string result = new string(url.TakeWhile(c => c != '?').ToArray());

result=“/deposit/jingdongpay.htm”

是的,但我只想删除PHP中htm
Print left$(url$,20)
之后的路径:$url=strtok($url,“?”);如果在c#中有什么想法?我认为等到OP告诉你他用哪种语言编写代码是c#中等价的
Split
函数是有意义的。请参阅文档:由于您的答案与我的答案相同且比我快,因此删除我的答案,但这并不意味着我复制了您的答案+1感谢您的快速响应不饿reputation@Prasadtelkikar谢谢,你说得很对。我相信你没有抄袭我的答案,但我们有相同的方法,顺序相同,所以我认为你抄袭了。我不是投反对票的人,回复你的评论
split
是最简单的一个,如果有人说不使用split,那么我们通常使用IndexOf,如果有人说不同时使用这两种方法,那么我们尝试TakeWhile。。正确的?所以我更新了我的答案,我知道你没有投反对票,但我很感兴趣为什么其他人投了反对票
string result = new string(url.TakeWhile(c => c != '?').ToArray());