Возьмите часть текста, когда она соответствует, избавьтесь от остального, потому что это бесполезно - PullRequest
2 голосов
/ 21 октября 2011

У меня есть текст с именем

string path = "Default/abc/cde/css/";

Я хочу сравнить текст.

string compare = "abc";

Я хочу получить результат

string result = "Default/abc";

Остальная часть пути /cde/css бесполезна. Можно получить желаемый результат в asp.net c #.Спасибо.

Ответы [ 4 ]

1 голос
/ 21 октября 2011

Попробуй это. Это будет циклически проходить по разным уровням (при условии, что это уровни каталогов), пока не совпадет с 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);
}
1 голос
/ 21 октября 2011

Это то, что вы ищете?:

string result = path.Substring(0, path.IndexOf(compare)+compare.Length);
0 голосов
/ 21 октября 2011

Я предлагаю, чтобы в будущем вы сталкивались с вопросами подобного рода, сначала попробуйте сами

0 голосов
/ 21 октября 2011
string path = "Default/abc/cde/css/";
string answer = "";
string compare = "abc";

if (path.Contains(compare ))
{
     answer = path.Substring(0, path.IndexOf(stringToMatch) + compare.Length);
}

Нечто подобное должно работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...