gpt4 book ai didi

C# string.Split() 匹配两个斜线?

转载 作者:行者123 更新时间:2023-11-30 14:19:30 24 4
gpt4 key购买 nike

我有一个用 C# 编写的 .NET 3.5 Web 应用程序正在执行一些包含文件路径的 URL 重写,但我遇到了问题。当我调用 string.Split('/') 时,它同时匹配“/”和“\”字符。那是……应该发生的吗?我假设它会注意到 ASCII 值不同并跳过它,但看来我错了。

// url = 'someserver.com/user/token/files\subdir\file.jpg
string[] buffer = url.Split('/');

上面的代码给出了一个包含 6 个元素的 string[]...这似乎违反直觉。有没有办法强制 Split() 只匹配正斜杠?现在我很幸运,因为有问题的斜线在 URL 的末尾,我可以连接 string[] 中的其余元素,但这对我们来说需要做很多工作正在做,而不是解决潜在问题的好方法。

有人遇到过这个吗?有一个简单的答案吗?我很感激!

更多代码:

url = HttpContext.Current.Request.Path.Replace("http://", "");
string[] buffer = url.Split('/');

事实证明,Request.Path 和 Request.RawUrl 都在更改我的斜杠,这很荒谬。所以,是时候多研究一下,弄清楚如何从不破坏我的格式的函数中获取 URL。感谢大家一起玩我的疯狂,抱歉这是一个误导性的问题!

最佳答案

当我尝试以下操作时:

string url = @"someserver.com/user/token/files\subdir\file.jpg";
string[] buffer = url.Split('/');
Console.WriteLine(buffer.Length);

...我得到 4。发布更多代码。

关于C# string.Split() 匹配两个斜线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2580141/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com