我有一個名爲抓住它匹配時,文本的一部分,擺脫其餘的,因爲它是無用
string path = "Default/abc/cde/css/";
我想比較文本的文本。
string compare = "abc";
我想結果
string result = "Default/abc";
路徑/cde/css
的其餘部分是useless.Is有可能搶在asp.net C#的願望的結果。謝謝。
我有一個名爲抓住它匹配時,文本的一部分,擺脫其餘的,因爲它是無用
string path = "Default/abc/cde/css/";
我想比較文本的文本。
string compare = "abc";
我想結果
string result = "Default/abc";
路徑/cde/css
的其餘部分是useless.Is有可能搶在asp.net C#的願望的結果。謝謝。
這是你在尋找什麼?:
string result = path.Substring(0, path.IndexOf(compare)+compare.Length);
string path = "Default/abc/cde/css/";
string answer = "";
string compare = "abc";
if (path.Contains(compare))
{
answer = path.Substring(0, path.IndexOf(stringToMatch) + compare.Length);
}
上面的東西應該可以工作。
試試這個。這將循環遍歷不同的級別(假設它們是目錄級別),直到它匹配compare
,然後退出循環。這意味着如果有一個名爲abcd
的文件夾,這將不會結束循環。
string path = "Default/abc/cde/css";
string compare = "abc";
string result = string.Empty;
foreach (string lvl in path.Split("/")) {
result += lvl + "/";
if (lvl == compare)
{
break;
}
}
if (result.Length>0)
{
result = result.substring(0, result.length-1);
}
非常感謝D :)。 –
我建議,如果你遇到這種在未來的問題,你應該自己先嚐試一下。
string result = path.Contains(compare) ? path.Substring(0, (path.IndexOf(compare) + compare.Length)) : path;
非常感謝D :),它非常完美。 –