Есть строка с именем файла(например string filename= FI_FILE1_111_1111). Как мне вытащить его префикс до второго нижнего подчеркивания(FI_FILE1_)??
Как нибудь наверное через substring и string.indexOf(но если привязаться к "_" то он возьмет только первую часть), либо через Regex
Ответ
Ну например так:
var s = "FI_FILE1_111_1111";
var firstIndex = s.IndexOf('_');
var secondIndex = s.IndexOf('_', firstIndex + 1);
var part = s.Substring(0, secondIndex + 1);
При отсутствии нужного количества _ выдаст пустую строку.
Менее эффективно, но короче:
var part = string.Concat(s.Split('_').Take(2).Select(p => p + "_"));
При отсутствии нужного количества _ выдаст пустую строку.
Комментариев нет:
Отправить комментарий