Переименовать файлы с помощью регулярных выражений

У меня есть набор файлов в одном формате somethingname___someotherstuff.txt

Я хочу прокатиться ___someotherstuff немного.

(___ = 3 подчеркивания)

Это комбинация буквы и цифры

Как мне это сделать?

РЕДАКТИРОВАТЬ: ОС = Windows 7

ИЗМЕНИТЬСНОВА: бит "someotherstuff" не одинаков в каждом файле. Сочетание разных чисел и символов

РЕДАКТИРУЙТЕ Снова СНОВА: кто-то ответил на это, а затем снял его. Зачем? у тебя был правильный ответ._ \ w + спасибо. положите его обратно, если хотите, и я отмечу ваш ответ

2 ответа

Вы можете сделать это примерно так:

string[] files = Directory.GetFiles(path);
foreach (string f in files)
{
    if (file.IndexOf("___") != -1)
    {
        File.Move(file, Regex.Replace(file, "___.*\.txt$", ""));
    }
}

Следующий шаблон регулярных выражений может удовлетворить требование...

string newFileName = Regex.Replace(fileName, @"___\w*(?=\.)", "")
Другие вопросы по тегам