我想到了這一點,一個辦法要做到這一點是爲程序定義一些分隔符以知道在哪裏破壞URL。
在我們這樣做之前,我們需要先替換特殊字符。
讓我們開始:
string searchFor;
string replaceWith;
static void Main(string[] args)
{
// First we need to replace the special characters:
ReplaceSubstrings replace = new ReplaceSubstrings();
string s = "http://Mydatabase-live/ReportServer?%2fADMIN%2fSTATS+-+SCHEDULE&TEAMNM=2015 TERRIER JV&rs:Command=Render&rs:Format=PDF";
// We need to replace:
// "%2f" with "/"
// "+-+" with "-"
// using System.Text.RegularExpressions
replace.searchFor = "%2f";
replace.replaceWith = "/";
s = Regex.Replace(s, replace.searchFor);
replace.searchFor = "+-+";
replace.replaceWith = "-";
s = Regex.Replace(s, replace.searchFor);
// Your URL will now look like this:
Console.WriteLine(s);
// Output: http://Mydatabase-live/ReportServer?/ADMIN/STATS-SCHEDULE&TEAMNM=2015 TERRIER JV&rs:Command=Render&rs:Format=PDF
// Add the delimiters
char[] delimiters = {'?', '&', '='};
string[] words = s.Split(delimiters);
foreach (string s in words)
{
System.Console.WriteLine(s);
}
// Output:
// http://Mydatabase-live/ReportServer
// /ADMIN/STATS-SCHEDULE
// TEAMNM
// 2015 TERRIER JV
// rs:Command
// Render
// rs:Format
// PDF
// Keep the console window open in debug mode.
Console.WriteLine("Press any key to exit");
Console.ReadKey();
}
您的網址將在更多的地方比你指定的分離,但是這是你應該怎麼做。您可以從第一個=
標誌所在的字符串中刪除最後一部分,然後執行字符串分隔。
我希望這對你有所幫助。
什麼是ReplaceSubstrings replace = new ReplaceSubstrings(); –
它用於創建對象並調用構造函數。它等同於:'Class1 obj = new Class1();' – Krayen